【问题标题】:How to convert rpy2.robjects.vectors.DataFrame to csv?如何将 rpy2.robjects.vectors.DataFrame 转换为 csv?
【发布时间】:2019-01-02 05:40:02
【问题描述】:

执行我的 python 文件后,我得到的结果为:

R object with classes: ('data.frame',) mapped to:
<DataFrame - Python:0x7f3f3c05a388 / R:0x563006a79ea8>
[DataFrame, DataFrame, DataFrame, DataFrame, ..., DataFrame, DataFrame, DataFrame, DataFrame]
R object with classes: ('data.frame',) mapped to:
<DataFrame - Python:0x7f3f3c05a388 / R:0x563006a79ea8>
[DataFrame, DataFrame, DataFrame, DataFrame, ..., DataFrame, DataFrame, DataFrame, DataFrame]
R object with classes: ('data.frame',) mapped to:
<DataFrame - Python:0x7f3f3c05a388 / R:0x563006a79ea8>
[DataFrame, DataFrame, DataFrame, DataFrame, ..., DataFrame, DataFrame, DataFrame, DataFrame]
...
R object with classes: ('data.frame',) mapped to:
<DataFrame - Python:0x7f3f3c05a388 / R:0x563006a79ea8>
[DataFrame, DataFrame, DataFrame, DataFrame, ..., DataFrame, DataFrame, DataFrame, DataFrame]


len(a)=12
type(a)=rpy2.robjects.vectors.DataFrame

我正在尝试通过a.to_csv('filename.csv') 将结果数据帧转换为 csv 但它不适用于当前结果。任何人都知道如何转换'rpy2.robjects.vectors.DataFrame csv'。任何帮助表示赞赏。

【问题讨论】:

    标签: python rpy2


    【解决方案1】:

    您可以尝试使用 pandas2ri 将数据帧传递给 R 的全局环境(您可能需要为此安装 tzlocal),然后将整个命令作为字符串传递,其中 R 本身将值作为数据帧返回。在下面查找参考

    rdf = pandas2ri.py2ri(self.data)
    ro.globalenv['r_timeseries'] = rdf
    prediction=ro.r('as.data.frame(stlf(ts(r_timeseries,frequency = 12),h=4,level=c(90)))')
    

    通过代码运行您:我首先创建一个名为 r_timeseries 的 globalenv 数据框,并将其作为字符串命令传递到下面,您通常也会在 R 中传递该命令。在这里,我使用 rpy2 使用 STLF 获取 4 个周期的预测。

    自己去试试吧,希望对你有所帮助。

    【讨论】:

      猜你喜欢
      • 2015-02-18
      • 2012-06-02
      • 1970-01-01
      • 2011-02-09
      • 2014-07-31
      • 2020-09-04
      • 2014-04-23
      • 2021-02-26
      相关资源
      最近更新 更多