假设我已成功导入rpy2(我有),我需要导入rpy2中的其他模块/包(以及需要时的其他语法更改),以便将以下rpy版本1.x函数的字符串转换为它的rpy2等价?我不能再在我为python 2.7.3运行的环境中使用rpy 1.x并且需要将这些转换为使用rpy2来使我的代码工作:
rpy.r.assign(rName, values) #get name, assign value
rpy.r.get("variablename") #get variable names
rpy.r.source (sourceloc + "sourcelocation") #source location
rpy.r.rm(list=rpy.r.ls()) #clean workspace
rpy.r.attach(rpy.r.get("fun")) #attach function
rpy.r.setwd(os.getcwd()) #set working directory
rpy.r.save_image() #save workspace image
rpy.r.load("filename.RData") #load an .RData file
提前感谢您提供的任何帮助。
答案 0 :(得分:0)
显然,您需要定义Python变量rName
,values
,sourceloc
等。您需要的唯一其他变更是
import rpy2.robjects as ro
R = ro.r
并将rpy.r
的每次出现更改为R
:
R.assign(rName, values) #get name, assign value
R.get("variablename") #get variable names
R.source(sourceloc + "sourcelocation") #source location
R.rm(list=R.ls()) #clean workspace
R.attach(R.get("fun")) #attach function
R.setwd(os.getcwd()) #set working directory
R.save_image() #save workspace image
R.load("filename.RData") #load an .RData file