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

来源:简书

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

相关推荐
kyriewen42 分钟前
面试官问你:“AI 能写 80% 的代码了,公司为什么还需要你?”
前端·javascript·面试
甲维斯2 小时前
又升级咯!坦克大战2026,科技与复古并存!
前端·人工智能·游戏开发
搬砖的码农4 小时前
(08)为什么我的 Agent 一跑后台服务就卡死
前端·agent·ai编程
飘尘4 小时前
前端转全栈(Java 后端)必须要知道的:开发中的锁机制与分布式并发控制
前端·后端·全栈
亲亲小宝宝鸭4 小时前
前端性能监控:web-vitals
前端·性能优化·监控
陆枫Larry5 小时前
可滚动页面背景填不满:`height: 100vh` vs `min-height: 100vh`
前端
Patrick_Wilson5 小时前
Squash Merge 的血缘陷阱:为什么删掉的代码又活了过来
前端·git·程序员
kyriewen5 小时前
今天的科技圈,全在抢英伟达的饭碗
前端·面试·ai编程
Databend5 小时前
在 AWS 中国峰会逛了一天,我在 Databend 展台看到了 Agent 数据基础设施的新思路
数据库·人工智能·agent