我第一次在项目中使用packrat
包,我想使用Makefile以特定顺序为不同的目标运行特定脚本。然而。我像这样组织了我的文件:
main_dir/packrat/
main_dir/subproject1/R_scripts_1/Makefile
当我从Makefile中运行R CMD BATCH someRfile.R
时,R不使用packrat libs,而是使用默认用户libs,这不是我想要的。
有没有办法强制所有R进程startet在packrat目录的任何子目录中,只使用packrat库?!
谢谢!
答案 0 :(得分:1)
我想您必须在source("packrat/init.R")
的最开头包含someRfile.R
,就像项目文件夹中的.Rprofile
文件一样。
我假设您在上述评论中使用了R studio。
答案 1 :(得分:1)
刚出现这个问题 - 以下修正了它。
向包含以下内容的每个子目录(和子子目录等)添加.Rprofile
,
source("../.Rprofile", chdir = TRUE)
来自packrat docs