首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R_LIBS_USER路径之争

R_LIBS_USER路径之争
EN

Stack Overflow用户
提问于 2016-06-22 14:09:39
回答 1查看 8.2K关注 0票数 4

当我检查R环境时,我得到:

代码语言:javascript
复制
> Sys.getenv("R_LIBS_USER")
[1] "~/R/x86_64-pc-linux-gnu-library/3.3"

但是,当我cd到目录时,似乎根本没有这条路径:

代码语言:javascript
复制
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版是最新的:

代码语言:javascript
复制
> 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"
EN

回答 1

Stack Overflow用户

发布于 2016-06-22 14:15:11

R_LIBS_USER变量是可选的,如果设置好了,则将添加到库路径(由.libPaths()显示)。

我可能是少数人,但在我负责的系统中,我试图取消设置R_LIBS_USER,这样我就可以

代码语言:javascript
复制
R> .libPaths()
[1] "/usr/local/lib/R/site-library" "/usr/lib/R/site-library"  
[3] "/usr/lib/R/library"           
R> 

这意味着install.packages()等人将使用一个系统范围的目录,供系统上的所有用户访问--这在我们有多用户系统的工作中是有意义的。需要注意的一点是,您希望您的用户是在该目录上具有组写权限的组的成员,以便能够安装(只要您可以信任您的用户)。

这样做也消除了您所观察到的版本目录(即3.2/3.3/)。

更详细的细节在help(Startup)上。

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37970555

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档