2

我需要运行(几次)我的 R 脚本(script.R),它基本上看起来像这样:

library(myLib)
cmd = commandArgs(TRUE)
args=myLib::parse.cmd(cmd)
myLib::exec(args)

myLib是我自己的包,它加载了一些依赖项(car、minpack.lm、plyr、ggplot2)。加载库所需的时间与 的时间相当myLib::exec,所以我正在寻找一种方法,它可以帮助我在每次调用时都不加载它们Rscript script.R

我知道Rserve,但它看起来有点矫枉过正,尽管它可以完全满足我的需要。还有其他解决方案吗?

PS:我使用Scalascript.RJVM调用。

4

1 回答 1

2

简要地:

  • 在启动时你需要加载你的库
  • 如果您反复调用并反复启动,您会反复加载库
  • 您已经提到了一个有状态的解决方案(Rserve),它允许您启动它一次但连接和评估多次

所以我想你回答了你的问题。

否则,我更喜欢并展示了它是如何比 R 或 Rscript 更快地启动——但最快的方法就是不重新启动。

于 2015-02-19T15:04:09.900 回答