如何在R中安装本地包并指定正确的.libpath目录?
解决R包安装到指定.libpath的问题
我来帮你搞定这个R包安装路径的小问题,这其实是不少R用户都会碰到的情况,给你几个实用的解决办法:
先确认目标路径
首先先搞清楚你要安装的目标路径到底是什么,在控制台里运行libPaths(),就能看到当前R识别的所有库路径列表,确认你想要的那个路径在里面(如果不在,得先把它加进去)。
方法1:安装时直接指定路径(最直接)
不管你是用基础R还是devtools安装本地包,都可以直接在安装命令里指定lib参数,精准把包装到你要的目录:
- 如果你的包是打包好的
tar.gz或zip文件,用基础R命令:
注意替换掉实际的包文件路径,install.packages("C:/Users/wo2/RSSCPM/你的包文件名.tar.gz", lib = "你目标的.libpath路径", repos = NULL, type = "source")repos = NULL是告诉R这是本地包,不用去CRAN拉取。 - 如果你的包是开发中的文件夹形式,用devtools的话:
devtools::install("C:/Users/wo2/RSSCPM/你的包文件夹", lib = "你目标的.libpath路径")
方法2:临时修改默认安装路径
如果你希望这次R会话里所有安装都默认到目标路径,不用每次加参数,可以先运行:
.libPaths("你目标的.libpath路径")
这会把指定路径设为当前会话的默认安装位置,之后再运行安装命令就自动装到这里了,重启R后会恢复原来的设置。
方法3:永久修改默认路径(一劳永逸)
要是想每次启动R和R Studio都用这个路径作为默认安装位置,可以修改R的配置文件:
- 打开你的用户文档文件夹(Windows下一般是
C:\Users\你的用户名\Documents),找.Rprofile文件,如果没有就新建一个纯文本文件,重命名为.Rprofile(注意前面的点)。 - 在文件里添加一行代码:
这样每次启动R,目标路径都会被放到库路径列表的最前面,成为默认安装位置。.libPaths(c("你目标的.libpath路径", .libPaths()))
另外关于R Studio显示的libpath不一致的问题,你可以直接在R Studio的控制台里运行libPaths(),看看实际生效的路径是什么,再对应上面的方法调整就好啦。
内容的提问来源于stack exchange,提问作者Soren Christensen
相关产品推荐
相关产品推荐

