如何将rpy2 ListVector(rpy2.robjects.vectors.ListVector)转换为python? - python

我正在使用rpy2从python运行auto.arima()模型。我的预测输出的对象类型为rpy2.robjects.vectors.ListVector。

input1:  type(forecast)
output: rpy2.robjects.vectors.ListVector

问题:如何将该预测以rpy2.robjects.vectors.ListVector的形式转换回python?请注意,我看过其他帖子,但答案似乎太过具体了,无论如何,都无法从中找出答案。

请注意,此ListVector具有以下名称:

input: print(forecast.names)
output:   [1] "method"    "model"     "level"     "mean"      "lower"     "upper"    
 [7] "x"         "xname"     "fitted"    "residuals"

python大神给出的解决方案

可以使用“ .rx”转换回python以选择感兴趣的向量,然后使用numpy.array:

arima_mean = np.array(forecast.rx('mean'))

然后对大熊猫,首先将numpy数组展平:

pd.DataFrame({'mean':arima_mean.flatten()} )