如何在R中正确设置库目录/路径

tom*_*mka 4 r

我的目标是定义一个R用于安装和搜索库的路径.我读到这可以通过更改安装路径中的Rprofile.site文件来完成R.我在那里尝试了两个命令:

.libPaths("D:/RLibrary")
.Library.site <- file.path("D:/RLibrary")
Run Code Online (Sandbox Code Playgroud)

其中我甚至在阅读了帮助文件后也没有完全理解其中的差异.

但是,在启动之后R,仍然会在两个位置查找库.

.libPaths()
[1] "D:/RLibrary"                        "C:/Program Files/R/R-3.3.1/library"
Run Code Online (Sandbox Code Playgroud)

为什么这样,以及如何仅将库路径更改为我想要的路径?

csg*_*pie 9

我建议您不要为包提供单个目录,因为许多基本软件包都带有R.而是您需要一个用户将安装软件包的目录.

创建一个.Renviron文件并添加R_LIBS指向您希望包最终进入的目录的环境变量.在我的机器上,我有

# Linux 
R_LIBS=/data/Rpackages/
Run Code Online (Sandbox Code Playgroud)

或者如果你有类似的Windows

# Windows
R_LIBS=C:/R/library
Run Code Online (Sandbox Code Playgroud)

.libPaths()现在看起来像

R> .libPaths()
[1] "/data/Rpackages"   "/usr/lib/R/site-library"
Run Code Online (Sandbox Code Playgroud)

这意味着当我安装一个软件包时,它会进入 /data/ncsg3/Rpackages


如果您确实只想拥有一个目录,可以将该R_LIBS_SITE变量设置为省略默认目录.