如何在Python中调用R中的函数?

时间:2017-08-30 07:32:15

标签: python r rpy2

我在R中有这个功能,我想在python中调用它。我计划将已经在python中操作的数据分配给R函数,以对其进行进一步分析。在函数进行分析之后,我还需要将数据返回到python。我知道rpy2,我使用了这个命令

robjects.r('''source('mycode.R')''')
r_test_function = robjects.globalenv['myFunction']

我收到此错误:

  

/usr/local/lib/python2.7/dist-packages/rpy2/rinterface/的初始化的.py:186:   RRuntimeWarning:文件错误(文件名,“r”,编码=编码):
  无法打开连接

     

warnings.warn(x,RRuntimeWarning)   /usr/local/lib/python2.7/dist-packages/rpy2/rinterface/init.py:186:   RRuntimeWarning:另外:warnings.warn(x,RRuntimeWarning)   /usr/local/lib/python2.7/dist-packages/rpy2/rinterface/init.py:186:   RRuntimeWarning:警告信息:

     

warnings.warn(x,RRuntimeWarning)   /usr/local/lib/python2.7/dist-packages/rpy2/rinterface/init.py:186:   RRuntimeWarning:在文件中(文件名,“r”,编码=编码):
  warnings.warn(x,RRuntimeWarning)   /usr/local/lib/python2.7/dist-packages/rpy2/rinterface/init.py:186:   RRuntimeWarning:

     

warnings.warn(x,RRuntimeWarning)   /usr/local/lib/python2.7/dist-packages/rpy2/rinterface/init.py:186:   RRuntimeWarning:无法打开文件'mycode.R':没有这样的文件或   目录

     

warnings.warn(x,RRuntimeWarning)信息|   ____________________________________________________________________________________________________ |错误|终止有异常状态|错误

我使用sys.path.append('thePath')作为包含该函数的目录。有人可以帮我这个吗?我已经搜索了很多关于这个主题的内容,但在我的案例中找不到任何内容。我上面用rpy2解释了什么呢?

谢谢,

1 个答案:

答案 0 :(得分:0)

您关心的是获取完整的目录路径吗?我目前正在使用Python 3.6来浏览目录中的所有文件并列出它们。由于您只想使用一个特定文件,因此可以尝试以下操作:

导入os

file = os.path.abspath('' F:\ Training.xlsx'') 所以你的文件变量看起来像是' F:\ Training.xlsx'

您只需使用变量文件,而不是输入整个目录路径。

希望它有所帮助。