gpt4 book ai didi

Python Pandas to_pickle 无法 pickle 大型数据帧

转载 作者:太空狗 更新时间:2023-10-29 18:22:05 26 4
gpt4 key购买 nike

我有一个包含 500,000 行的数据框“DF”。以下是每列的数据类型:

ID      int64
time datetime64[ns]
data object

“数据”列中的每个条目都是一个大小为 [5,500] 的数组

当我尝试使用

保存此数据框时
DF.to_pickle("my_filename.pkl")

它返回了以下错误:

     12     """
13 with open(path, 'wb') as f:
---> 14 pkl.dump(obj, f, protocol=pkl.HIGHEST_PROTOCOL)

OSError: [Errno 22] Invalid argument

我也试过这个方法,但我得到了同样的错误:

import pickle


with open('my_filename.pkl', 'wb') as f:
pickle.dump(DF, f)

我尝试保存此数据框的 10 行:

DF.head(10).to_pickle('test_save.pkl')

而且我完全没有错误。因此,它可以节省小DF但不能节省大DF。

我在 Mac 中使用 python 3、ipython notebook 3。

请帮我解决这个问题。我真的需要将这个 DF 保存到 pickle 文件中。我在互联网上找不到解决方案。

最佳答案

直到 pickle/pandas 方面的某处得到修复,我会说更好的选择是使用替代 IO 后端。 HDF 适用于大型数据集 (GB)。因此您不需要添加额外的拆分/合并逻辑。

df.to_hdf('my_filename.hdf','mydata',mode='w')

df = pd.read_hdf('my_filename.hdf','mydata')

关于Python Pandas to_pickle 无法 pickle 大型数据帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29547522/

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