我有一个 RMD 文件。我可以用 RStudio 界面的 knitr 编织它。但是当我尝试在控制台中运行一个单独的块时,我得到了错误:
Error in library(bla) : there is no package called bla
bla
我的自制包裹在哪里。我还没有安装bla
到我当前的项目中。我已经初始化了 packrat,并且bla
没有出现在 packrat 目录中。所以这两种方式都不应该起作用。
电话.libPaths()
告诉我
> .libPaths()
[1] "/home/user/projdir/packrat/lib/x86_64-pc-linux-gnu/3.4.0"
[2] "/home/user/projdir/packrat/lib-ext/x86_64-pc-linux-gnu/3.4.0"
[3] "/home/user/projdir/packrat/lib-R/x86_64-pc-linux-gnu/3.4.0"
我已经.libPaths()
在我的文档中添加了调用并得到了:
[1] "/home/user/Documents/projdir/packrat/lib/x86_64-pc-linux-gnu/3.4.0"
[2] "/home/user/Documents/projdir/packrat/lib-ext/x86_64-pc-linux-gnu/3.4.0"
[3] "/home/user/Documents/projdir/packrat/lib-R/x86_64-pc-linux-gnu/3.4.0"
[4] "/home/user/R/x86_64-pc-linux-gnu-library/3.4"
[5] "/usr/local/lib/R/site-library"
[6] "/usr/lib/R/site-library"
[7] "/usr/lib/R/library"
为什么路径不同?以及如何强制 knitr 仅使用来自 Packrat 的包?