我试图提供一种通过Rscript运行无人看管的R脚本的方法。我遇到的问题是图形的默认输出是 current 目录中的PDF文件。我想将此输出重定向到一个单独的文件夹,但不必过多更改脚本。
如果我的脚本很简单,例如:
args = commandArgs(trailingOnly = TRUE)
mydata <- get some data frame somehow
plot(tayside)
然后执行以下命令行:
Rscript.exe --vanilla --default-packages=RODBC,graphics,grDevices sample.R > C:\temp\sample.Rout
我在当前文件夹中得到一个Rplots.pdf
,在sample.Rout
文件夹中得到了一个C:\temp\
文件。
是否可以指定输出文件夹并将Rscript的所有输出放在那里?我尝试使用pdf.options(...)
将默认文件夹添加到file
参数的前面,但是没有办法。
答案 0 :(得分:0)
好吧,显然比我想象的要容易,不需要使用pdf.options()
,而只需在文件顶部使用pdf()
(在获取参数之后):
pdf(paste0(args[1], "MyFile.pdf"))
或者,对于多个文件:
pdf(paste0(args[1], "MyFile%03d.pdf"), onefile=FALSE)