使用rpy2在Python中保存RData工作区
另一个与rpy2相关的问题涉及将不推荐的rpy代码转换为其rpy2等效代码。在我的python脚本中,我有一个for循环语句,它简单地通过一系列矩阵传递输入。最后,我将它保存到一个.RData工作区,以便再次加载并循环2次 在rpy中,保存文件的编写方式如下:使用rpy2在Python中保存RData工作区,python,r,rpy2,Python,R,Rpy2,另一个与rpy2相关的问题涉及将不推荐的rpy代码转换为其rpy2等效代码。在我的python脚本中,我有一个for循环语句,它简单地通过一系列矩阵传递输入。最后,我将它保存到一个.RData工作区,以便再次加载并循环2次 在rpy中,保存文件的编写方式如下: #Save resulting RDATA workspace (.RDATA file) rpy.r.save_image() 我试过了,但没有成功 import rpy2.robjects as ro from rpy2robje
#Save resulting RDATA workspace (.RDATA file)
rpy.r.save_image()
我试过了,但没有成功
import rpy2.robjects as ro
from rpy2robjects import r
ro.r.save_image()
另外,我还有另一个python脚本,我也尝试过使用ro.r,但运气不好:
#写出成功变量
rpy.r(“成功=真实”)
rpy.r(“保存(success,file='success.RData')”)
如果有人知道如何将上述“rpy.r.”语句转换为rpy2等价形式,我将非常感谢指导。如果使用rpy2加载保存的对象,您可以使用Python的pickle(相当于r的load/save-请参阅): 否则,请尝试:
from rpy2.robjects.packages import importr
base = importr('base')
base.save_image(<arguments here...>)
从rpy2.robjects.packages导入导入
base=importr('base')
base.save_image()
我正在使用ro.r.load()加载保存的对象。这种语法似乎还可以。但我遇到的问题是将图像保存到磁盘。我阅读了robjects序列化,但我没有关注它(这里是noob)…你能提供一个这样的工作示例吗?完成(在回答中)。谢谢@lgautier。另外,我发现并成功测试的另一个途径(对于那些想知道的人)是,rpy_classic也将save_image()转换为rpy2。在rpy2中给猫剥皮有很多不同的方法