[英]Running a Folder of R Scripts, each in a different R instance
我有一个需要运行的脚本文件夹,但是我需要并行运行它们。
如何运行一个R脚本文件夹,每个文件夹位于R的不同实例中? 例如。 10个R脚本同时在10个R实例上运行。
以前我只是手动打开R十次,然后通过复制和粘贴来运行每个脚本,但是我想知道是否有一种方法可以使它自动化?
我不一定需要在R中执行此操作-我愿意使用其他语言。
这是仅R的解决方案,无论您使用哪种操作系统,都可以使用:
Rfiles <- dir("your.folder", pattern="\\.[R|r]$", full.names=TRUE)
library(parallel)
clus <- makeCluster(length(Rfiles))
parLapply(clus, Rfiles, source)
一个非常简单的方法来执行您正在描述的事情,是使用bash
脚本,如下所示:
for R_FILE in $(ls *.R)
do
R CMD BATCH $R_FILE &
done
如果您使用的是Windows,则需要安装Cygwin的东西,但是在Linux或Mac上,则可以使用。
您可以从外壳程序使用Rscript。 如何同时运行多个命令是特定于Shell的。 例如,这将适用于bash shell:
Rscript file1.R &
Rscript file2.R &
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.