当我检查R环境时,我得到了:
> Sys.getenv("R_LIBS_USER")
[1] "~/R/x86_64-pc-linux-gnu-library/3.3"
但当我cd
到目录时,似乎根本没有这条路径:
dz33@ccis4240:~/R/x86_64-pc-linux-gnu-library$ ll -a
total 12
drwxr-xr-x 3 dz33 dz33 4096 Jul 2 2015 .
drwxr-xr-x 3 dz33 dz33 4096 Jul 10 2015 ..
drwxr-xr-x 64 dz33 dz33 4096 Mar 30 16:41 3.2
正如您所看到的,只有/3.2
目录,但/3.3
。有人知道为什么以及如何更改为3.2
或设置3.3
?看来我的R版本是最新的:
> R.Version()
$platform
[1] "x86_64-pc-linux-gnu"
$arch
[1] "x86_64"
$os
[1] "linux-gnu"
$system
[1] "x86_64, linux-gnu"
$status
[1] ""
$major
[1] "3"
$minor
[1] "3.0"
$year
[1] "2016"
$month
[1] "05"
$day
[1] "03"
$`svn rev`
[1] "70573"
$language
[1] "R"
$version.string
[1] "R version 3.3.0 (2016-05-03)"
$nickname
[1] "Supposedly Educational"
答案 0 :(得分:6)
R_LIBS_USER
变量是可选,如果设置,它将被添加到库路径(由.libPaths()
显示)。
我可能属于少数群体,但在我尝试取消 R_LIBS_USER
的系统上,以便我得到
R> .libPaths()
[1] "/usr/local/lib/R/site-library" "/usr/lib/R/site-library"
[3] "/usr/lib/R/library"
R>
意味着install.packages()
等将使用系统上所有用户都可访问的系统范围的目录 - 这在我们工作的地方是有意义的拥有多用户系统。需要注意的一点是,您希望您的用户成为具有该目录的组写权限的组的成员才能安装(只要您可以信任您的用户)。
这样做也会消除您观察到的版本化目录(即3.2/
vs 3.3/
)。
富勒详细信息位于help(Startup)
。