繁体   English   中英

在不同的R实例中运行R脚本文件夹

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM