我有一个RMD文件。我可以从RStudio界面使用knitr进行编织。但是,当我尝试在控制台中运行单独的块时,出现了错误:
Error in library(bla) : there is no package called bla
其中bla
是我的自制包裹。我尚未在当前项目中安装bla
。我已经初始化了packrat,并且在packrat目录中没有bla
。因此,这两种方法都不起作用。
致电.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的软件包?