我正在使用rpy2,遇到一个问题困扰了我很久:我知道如何将Python数组或列表转换为R(借助rpy2)可以在Python中处理的FloatVector
。
那么反过来呢?比如我有一个是R对象的FloatVector
或者Matrix
,如何将它转换回Python数组或列表?
这个方法非常有效:
vector=numpy.asarray(vector_R)
我已经找到答案 :-). 假设vector_R是一个FloatVector。要将其转换回Python,您需要执行以下操作:
import rpy2.robjects.numpy2ri as rpyn
vector=rpyn.ri2numpy(vector_R)
就是这样!“vector”现在是一个Numpy数组。
import numpy as np
array=np.array(vector_R)
import rpy2.robjects.numpy2ri as rpyn
vector=rpyn.ri2py(v)
在新的rpy2中,当v是向量时,它是否成立
ri2py
不再存在了。不过现在有 rpy2py
,可能会取代它。 - MD004
ri2numpy
已经不存在。 - MD004