【发布时间】:2017-07-26 03:07:21
【问题描述】:
我使用自己的笔记本电脑安装 R,发现它只有一个库。尽管这个库仍然是 read only,但每次我使用 Rstudio 时:install.packages("abc"),我都可以看到新包自动存储到 read only 库文件夹中。
在我办公室的桌面上,我“相信”我也有管理员角色,因为我可以安装和删除任何东西(到目前为止)。我下载了最新版本的 R 并右键单击R-3.4.1-win.exe,有一个项目“以管理员身份运行”,然后它安装在我的桌面上。但是,当我像在笔记本电脑中一样使用 R studio 安装新包时,它总是会自动创建一个个人文件夹来存储新包。我不知道为什么。这是一种只有一个库文件夹的方法吗?我也在桌面上尝试了纯 R 模式(不使用 Rstudio)。当我想安装新软件包时,它总是说
Warning in install.packages("devtools") :
'lib = "C:/Program Files/R/R-3.4.1/library"' is not writable
然后会弹出一个窗口询问我“您要创建个人文件夹吗?”如果我说不,那么
Error in install.packages("devtools") : unable to install packages.
有没有办法解决这个问题?只为库维护一个文件夹
【问题讨论】:
-
将 r 安装到您具有写入权限的目录中,例如
C:/R。那么你安装包就没有问题了。或者,为 R 库文件夹设置替代位置。 -
这可能会引发争论,但除了少数例外(例如,
packrat),您不应该将新库安装到系统库中。我不想对用户进行粗略的分类,但是按照“一个用户可以完全控制计算机上的所有事物”的思路来思考是一种常见的非 unix-y 事物;一种常见的 unix-y 思考方式是让全局默认值“理智”(意味着合理的默认值),并让每个用户能够“附加”或添加到可用的内容。例如,如果您系统上的用户“b”想要安装旧版本的软件包,为什么要强制使用它? -
@mikeck 谢谢!是的,现在它确实只有一个库文件夹,就像我自己的笔记本电脑一样
-
@r2evans:我明白你的意思,但是如果我所有的包都在系统目录中,我的生活在 NIX 设备上会简单得多。默认是同时拥有一个系统和一个用户 /library/ 但我发现重复开始堆积,有时我没有加载最新版本。