为python源代码创建R包

时间:2013-12-18 23:13:14

标签: python r

我在python中编写了一个小程序,我想创建一个R接口/ R包来运行这个程序。

我看到Rpy有很多函数可以从python调用R,而rPython可以从R调用python函数。我还看到一些关于如何使用C ++源代码创建R包的教程。但是,我不清楚如何从python源代码创建一个R包。

由于所有内容都是用python编写的,我的目标是创建一个可以调用python程序的R包,如:

pythonProgram(input1,input2,input3)

任何关于教程/入门方法的建议都将受到高度赞赏!

2 个答案:

答案 0 :(得分:1)

如果你的python脚本不需要向R返回任何东西,你可以使用base R,它可以像这样简单:

pythonProgram <- function(input1, input2, input3) {

  command <- paste("pyprog.py -i1",input1,"-i2",input2,"-i3",input3)
  shell(command)

}

请查看shell(以及system)的帮助。两者都允许您运行任意系统命令。

如果python脚本需要将数据返回给R,您可以让python脚本写入日志文件,然后让R读取它。或者你可以让你的python脚本写入stdout并让shellsystem读取该输出。

答案 1 :(得分:0)

如果你在jython下运行你的python代码,那么它可以以rSymPy包的工作方式完成。检查其source code