gpt4 book ai didi

python - rpy2 - 如何将数据帧作为 RData 文件保存到磁盘?

转载 作者:行者123 更新时间:2023-11-30 22:29:03 37 4
gpt4 key购买 nike

我想知道如何将 pandas 数据帧保存到 .RData 文件,如何从 pandas 数据帧保存到 RData?我这里有最后一步的所有内容:

import pandas as pd
import rpy2
from rpy2 import robjects
from rpy2.robjects import pandas2ri
pandas2ri.activate()

# load RData file
df = pandas2ri.ri2py(robjects.r['get'](robjects.r['load'](path_to_rdata_file)))

.... do some processing to df ...

# save df as RData file
r_df = pandas2ri.py2ri(df)
??????????

如何将 pandas 数据作为 .RData 文件保存到磁盘?

最佳答案

我终于找到了答案,以下是使用 pandas 数据帧写入 .RData 文件的方法:

首先将数据帧转换为 R 数据帧:

r_data = pandas2ri.py2ri(df)

然后我们必须将数据帧分配给“R 工作区”中的变量:

robjects.r.assign("my_df", r_data)

最后,我们可以通过名称引用变量以调用save命令:

robjects.r("save(my_df, file='{}')".format(filename))

Here are 2 helper functions if you want to read/write RData files but work in python with pandas:

# read .RData file as a pandas dataframe
def load_rdata_file(filename):
r_data = robjects.r['get'](robjects.r['load'](filename))
df = pandas2ri.ri2py(r_data)
return df

# write pandas dataframe to an .RData file
def save_rdata_file(df, filename):
r_data = pandas2ri.py2ri(df)
robjects.r.assign("my_df", r_data)
robjects.r("save(my_df, file='{}')".format(filename))
os.chmod(filename, 0o777)

关于python - rpy2 - 如何将数据帧作为 RData 文件保存到磁盘?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46480247/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com