有人对从 S-Plus 调用 R 的好方法有任何建议吗?理想情况下,我只想将代码传递给 R 并取回数据,而不必编写任何过于复杂的东西来集成它们。
我应该补充一点,我熟悉 Omegahat 上的RinS包,但我没有使用过它。我的印象是 Insightful 在 Tibco 接管之前已经努力整合环境。
编辑:事实证明,RinS 在 Windows 上不起作用。我发现最简单的解决方案就是使用 Rscript。我可以使用system()
命令从 S-Plus 调用它。例如,这是一个简单的脚本:
#! Rscript --vanilla --default-packages=utils
args <- commandArgs(TRUE)
print(args)
print(1:100)
Sys.sleep(2)
res <- "hello world"
class(res) <- "try-error"
if(inherits(res, "try-error")) q(status=1) else q()
从 S-Plus 调用它:
system("rscript c://test.rscript 'some text'")
然后我只是将结果存储到一个文本文件中,并在脚本运行后将其导入 S-Plus。