2

在 Windows 7 x64 上,我安装了 3.0.0 版的 R。此外,我还将环境变量 R_LIBS_USER 设置为指向网络驱动器。在 rgui.exe 中,执行:

Sys.getenv("R_LIBS_USER")

输出我之前在上面设置的相同值。同样来自 R,将软件包安装到 R_LIBS_USER 指向的个人库中工作正常。到目前为止,一切都很好。

安装 0.97.551 版本的 RStudio 后,通过 RStudio 执行上述相同的代码也会输出相同的值(如预期的那样)。但是,在 RStudio 中,我尝试将软件包安装到个人库中失败了。错误消息有效地表明 RStudio 无法写入由 R_LIBS_USER 定义的个人库。

在发布到 stackoverflow 之前,我检查了 RStudio 的支持论坛(http://support.rstudio.org/help/discussions/problems/4608-change-personal-library-for-installing-packages)管理员指出问题与 R 而不是 RStudio 有关。管理员继续引用代码生成的 RStudio 文档

?.libPaths

在 RStudio IDE 中。管理员还通过链接http://support.rstudio.org/help/kb/troubleshooting/getting-help-with-r提供额外的指导。

查看 IDE 生成的文档和论坛链接后,我确定我的环境设置正确。然而,RStudio 仍然失败。

有没有人能够让 RStudio 个人库使用默认值以外的文件系统位置?

我应该再澄清一下我的需求。此应用程序最终将部署到的环境禁止普通用户以管理员身份运行 RStudio,因此将重点放在 R_LIBS_USER 个人库上。所以虽然我知道这会奏效,但对我来说这不是一个现实的选择。

我需要的是 RStudio 专门写入 R_LIBS_USER 而不是尝试也写入 R_HOME (我假设我认为它实际上正在尝试做的事情。)

4

1 回答 1

0

.libPaths("~/your-lib-path-here")在您的.RprofileR中添加一行并重新启动。.libPaths()让您可以编写和读取默认库集。

或者,如果您可以控制安装命令(即您需要您的库可用,但不必是默认库),大多数 R 命令(例如)install.packages都有一个lib参数,可让您手动指定要安装到的库。

您可能会考虑使用 R 包管理系统,例如Packrat,它可以自动将应用程序的依赖项安装到私有库中,而无需手动设置。(完全公开,我是这个包的贡献者。)它在 RStudio 下工作。

于 2013-11-22T04:01:10.703 回答