R包的查看、卸除、安装与卸载

01. 卸载自己古老的包

查看自己的包

复制代码
mypackages <- installed.packages()[,c('Package','Version','LibPath')] %>% as.data.frame()
write.csv(mypackages, "~/Desktop/mypackages.csv")

从存的文档中找到自己想要卸载的R包

复制代码
remove.packages(c("BSgenome.Athaliana.TAIR.TAIR9", "BSgenome.Hsapiens.UCSC.hg19", "GenomeInfoDb", "GenomeInfoDbData", "GenomicAlignments", "GenomicFeatures", "GenomicRanges", "GO.db", "GSEABase", "KEGGgraph", "KEGGREST", "learnr", "RgoogleMaps", "RSQLite", "yeastRNASeq", "yyplot"), lib = .libPaths()[1])
remove.packages(c("IRdisplay", "IRkernel"), lib = .libPaths()[2])

mypackages <- installed.packages()[,c('Package','Version','LibPath')] %>% as.data.frame()
write.csv(mypackages, "~/Desktop/mypackages_new.csv")

查看之后上述的包已经被卸载了。

02. 补充部分

查看已加载的包

复制代码
(.packages())

卸除已加载的包

复制代码
detach("package:RMySQL")

注意是卸除,不是卸载,也就是说不是把包从R运行环境中彻底删除,只是不希望该包被加载使用。

在包使用函数冲突,检验函数依赖时比较有用。

安装包

复制代码
install.packages("TSA")

列出包所在库的路径

复制代码
.libPaths()

包的载入

复制代码
library() 或 require()

安装完包后,需要加载才能使用其中的函数,此时括号中不使用引号。两者的不同之处在于library()载入之后不返回任何信息,而require()载入后则会返回TRUE,因此require()适合用于程序的书写。

包的更新

复制代码
update.packages()

彻底删除已安装的包:

复制代码
remove. packages(c("pkg1","pkg2") , lib = file.path("path", "to", "library"))

查看已安装的包

复制代码
installed.packages()[,c('Package','Version','LibPath')]

其中c('Package','Version','LibPath') 表示显示包名、版本、库路径信息,若无,c('Package','Version','LibPath')参数,则显示所有信息。

查看某个包提供的函数

复制代码
help(package='TSA')

作者:LeoinUSA

链接:https://www.jianshu.com/p/6358091a5683

来源:简书

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

相关推荐
雪隐15 小时前
个人电脑玩AI-16让5060 Ti给你打工——5060Ti 16G 跑 MiniMax-Music-3:从下载到 60s 出歌的全流程
前端·人工智能·后端
counting money16 小时前
Spring AI Alibaba 从入门到实战:构建企业级 AI 应用
java·人工智能·spring
CAD老兵16 小时前
让 AI Coding Agent 直接访问 CAD 文档:GitMCP 实战指南
前端·人工智能·github
深念Y17 小时前
Opencode Event 表写入优化方案
数据库·人工智能·ai·node.js·bug·优化·opencode
原野池予17 小时前
深入Java集合框架:数组与List互转底层原理剖析(JDK 8)
java·数据结构·list
程序员鱼皮17 小时前
DeepSeek Harness 最新邪修曝光!被吹成核弹的极简模式,真的夯吗?
前端·后端·ai编程
袅沫17 小时前
Nginx中部署多个前端项目——区分路径
服务器·前端
Asize17 小时前
为什么写代码前要先规划组件树?Next.js + Redis 笔记系统实战
前端·javascript·next.js
Java成神之路-17 小时前
深入理解 HashMap 扩容时机:JDK 7 vs JDK 8 的设计差异与取舍
java·juc
李冰然17 小时前
深入Java集合框架:数组与List互转底层原理剖析(JDK 8)
java