【问题标题】:Local libraries path removed from R path after minor upgrade [duplicate]小升级后从 R 路径中删除了本地库路径 [重复]
【发布时间】:2017-07-05 09:56:52
【问题描述】:

我在~/R/x86_64-pc-linux-gnu-library/3.4/ 中安装了很多软件包。今天打开R,尝试运行一些代码,发现包没有被识别:

库中的错误(“some_package”):没有名为“some_package”的包

我查看了路径,我得到了这个:

.libPaths() 
[1] "/usr/local/lib/R/site-library" "/usr/lib/R/site-library" "/usr/lib/R/library"  

这解释了为什么不再识别包。现在,我知道如何解决这个问题(将本地路径添加到 R 路径,例如修改 /etc/R/Renviron)。

请注意,我通过 sudo apt-get update... 更新了 R。但是,更新很小(从 3.4 到 3.4.1)(所以这不是 this question 的副本)。 Here 是更新/升级的命令行输出。看来问题可能与/etc/R/Renviron 的更新有关,正如Replacing config file /etc/R/Renviron with new version 行所指示的那样。

我的包源是

deb https://cloud.r-project.org/bin/linux/ubuntu xenial/

我的问题是,为什么会发生这种变化? R 中的每个 微小 变化都会恢复默认路径吗?它是否在某些文档中进行了解释?我在here 或其他地方找不到关于它的警告。

【问题讨论】:

  • 我不知道为什么会这样,但如果你用sudo R 启动R,那么你应该可以安装这些包。
  • @DiscoSuperfly 我已经安装了这些软件包。解决方案是在 R 中运行.libPaths("~/R/x86_64-pc-linux-gnu-library/3.4/")。我想知道为什么一个小更新从 R 中删除了我的本地路径。我明白为什么在主要更新中会发生这种情况(路径实际上从 3.3 更改为 3.4),但在 3.4 内,它们在同一个文件夹中。

标签: r linux


【解决方案1】:

这与 3.4.1 的新(?)默认行为有关,该行为使您的 Linux 系统上的所有用户都可以使用相同的 R 包库。请参阅此处以获取简洁的解决方案:https://stackoverflow.com/a/44903158/4115816

(该线程还描述了一些其他选项。)

【讨论】:

  • 谢谢。这实际上是一个骗局。相应地标记。
猜你喜欢
  • 1970-01-01
  • 2015-12-29
  • 2015-05-15
  • 2019-07-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多