【问题标题】:Rmarkdown does not find library pathRmarkdown 找不到库路径
【发布时间】:2017-12-26 23:44:14
【问题描述】:

使用 macOS 10.12,我正在尝试从终端编织一个 Rmd 文件。我刚刚从自制软件安装了 R,但是当我尝试以下操作时:

$ Rscript -e "rmarkdown::render('test.Rmd')"

出现错误:

Error in loadNamespace(name) : there is no package called ‘rmarkdown’
Calls: :: ... tryCatch -> tryCatchList -> tryCatchOne -> <Anonymous>
Execution halted

我假设,基于这个related question,需要导出库。

所以我在 R Studio 中尝试了:

> .libPaths()
[1] "/Library/Frameworks/R.framework/Versions/3.3/Resources/library"

然后在终端:

$ export R_LIB= usr/Library/Frameworks/R.framework/Versions/3.3/Resources/library

但这会引发错误:

-bash: export: `usr/Library/Frameworks/R.framework/Versions/3.3/Resources/library': not a valid identifier

任何关于如何从这里开始的建议将不胜感激!

【问题讨论】:

  • 导出中缺少前导斜杠。
  • /usr/Library/Frameworks/R.framework/Versions/3.3/Resources/library 不会抛出同样的错误
  • .libPaths()的返回值不匹配
  • $ export R_LIB=/Library/Frameworks/R.framework/Versions/3.3/Resources/library 运行,但再次抛出相同的错误。有任何想法吗? Rmarkdown 在库中
  • 同样的错误?如果路径正确,您将不会收到“不是有效标识符”消息

标签: r bash r-markdown


【解决方案1】:

在 bash 中分配时,= 符号周围不能有空格。这就是“不是有效标识符”错误的原因。

export R_LIB=usr/Library/Frameworks/R.framework/Versions/3.3/Resources/library

这将解决您的 Bash 问题,但我不确定您要在 R 中完成什么。我发现您不太可能拥有 usr/Library 目录。您可以设置 an environment variable 称为 R_LIBS_USER 告诉 R 在哪里查找用户特定的库,以及 R_LIBS

库搜索路径在启动时从环境变量R_LIBS(它应该是一个以冒号分隔的目录列表,R 库树的根目录)然后是环境变量R_LIBS_USER 中的目录进行初始化。仅包含当时存在的目录。

默认情况下,R_LIBS 未设置,R_LIBS_USER 设置为主目录的目录“R/R.version$platform-library/x.y”(或者对于 CRAN macOS 版本为“Library/R/x.y/library”),对于 R x.y.z.

我怀疑您可能正在寻找:

export R_LIBS=/Library/Frameworks/R.framework/Versions/3.3/Resources/library

或者,如果是用户特定的:

export R_LIBS=$HOME/Library/Frameworks/R.framework/Versions/3.3/Resources/library

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多