如何从R调用Rscript?

时间:2015-04-24 15:23:38

标签: r testing rscript

我正在开发一个包暴露R接口(一组交互式使用的函数)和一个命令行接口通过Rscript的包。第二个通过一个小型启动器工作,例如,在命令行:

Rscript mylauncher.R arg1 arg2 arg3

会调用我的包的功能。 我想测试来自R的几个命令行。没什么好看的,只要确保一切运行没有错误。 如果我在R源文件中测试这些调用:

system("Rscript mylauncher.R arg1 arg2 arg3")

我如何确定我拨打了正确的Rscript?如果有多个R安装? (在我的设置中实际情况如此)。 另一种方法是写入R源文件:

source("mylauncher.R")

但是我没有看到如何指定命令行(我会避免覆盖函数commandArgs的技巧,因为我想测试命令行的正确标记化)。有人有想法吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

关于

  

我如何确定我拨打了正确的Rscript?万一有   多个R装置?

您将在命令行上查询R RHOME,并从wihthin R查询Sys.getenv("R_HOME")

然后,您附加bin/RScript,并且Rscript应与您当前的会话相对应。我仍然以这样的方式设计我的库,我可以从R ...中调用它们。