使用rpy2在python中分配然后附加文件路径名称

myClone

这是我昨天问的一个问题的附录:使用rpy2将R文件输入python的问题

就我而言,这个问题有两个方面。@MattDMo的.R脚本中调用的解决方案(感谢Matt)是正确的。但是,我认为我的错误是如何在python脚本中引用文件路径名,然后将其用于.R文件中的源代码。

在我的python脚本中,我有这个

codeLoc = "../rcode"

其次,

rpy.r.assign("codeLoc", codeLoc)

这个赋值函数将代码位置文件路径附加到我尝试提供源代码的R脚本中的变量(“ codeLoc”)。

最初,python脚本使用了以下命令:

rpy.r.source(codeLoc + "/filename.R")

真的很简单!但是现在rpy2已完成工作,因此我必须使用字符串等。所以,知道

ro.r("""source('filename.R')""")

.R脚本中的源代码,我该如何将文件路径名附加到脚本上,这样我就不必每次都调用它(因为我需要多次使用相同的文件路径,并且该路径可能未来的变化)。本质上,我需要此伪代码的正确rpy2版本:

ro.r("""source(codeLoc + ('/filename.R')""")

我的直觉是我可能需要更改如何使用rpy2分配codeLoc本身?也许由于未正确使用assign方法,R和Python无法正确通信吗?

提前致谢...

菲利普

新方法实际上使事情变得更轻松。不必调用r.assign,而只需指定字符串(如果需要,可以动态地指定)并调用它即可。例如,

codeLoc = "../rcode"
r_call = "source('" + codeLoc + "/filename.R')"
ro.r(r_call)

编辑如果您要打开一系列文件,则可以在for循环中动态调用它们。我将处理两种情况。首先,对名称建立索引(例如,文件名1,文件名2等),其次,不对名称进行索引。

1)如果使用ind_max作为最大文件编号来索引文件名,则可以source如下所示:

for num in range(ind_max):
    ro.r("source('" + codeLoc + "/filename" + str(num) + ".R')")

2)如果文件名未索引,则可以通过定义要列出的文件名列表来做同样的事情source

names = ['spam', 'eggs']
for name in names:
    ro.r("source('" + codeLoc + "/filename" + name + ".R')")

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在rpy2中分配数据框列

来自分类Dev

使用rpy2将.RData文件读入python

来自分类Dev

使用rpy2将.R文件采购到python时出现问题

来自分类Dev

使用rpy2从python调用R脚本

来自分类Dev

使用rpy2在Python中保存RData工作区

来自分类Dev

使用pip为Python 3安装rpy2

来自分类Dev

使用rpy2将Python变量传递给R

来自分类Dev

使用rpy2从python动态调用R库

来自分类Dev

使用 rpy2 从 Python 调用 R 函数

来自分类Dev

通过rpy2使用Rblpapi

来自分类Dev

rpy2 zoo 未使用的参数

来自分类Dev

将路径名写入文件(Python)

来自分类Dev

python误读文件路径名

来自分类Dev

在Python和Rpy2中使用R:如何ggplot2?

来自分类Dev

使用easy_install在Python中安装rpy2模块时出错

来自分类Dev

我如何使用Python / rpy2生成CDdiagrams

来自分类Dev

如何通过Rpy2(v3)在Python中使用R中的`hclust`函数?

来自分类Dev

如何使用rpy2 api从python脚本正确获取R sessionInfo()?

来自分类Dev

如何在Python代码中使用rpy2将R函数作为参数传递

来自分类Dev

使用 rpy2 将 Python 二进制数据转换为 R

来自分类Dev

通过rpy2将列表从python传递到R

来自分类Dev

将RPy2 ListVector转换为Python字典

来自分类Dev

如何将Python函数与rpy2结合?

来自分类Dev

通过rpy2将列表从python传递到R

来自分类Dev

具有多个输入参数的 Python RPy2 函数

来自分类Dev

如何使用rpy2访问R包的内部功能?

来自分类Dev

在Django中使用rpy2和biomaRt

来自分类Dev

如何使用rpy2运行auto.arima

来自分类Dev

使用rpy2运行R函数时出错