首页 > 解决方案 > upickling 错误数据被截断 - 保存大型数据帧的更好方法

问题描述

我有一个相当大的数据框需要保存。当我使用泡菜保存时,大小约为 300mb。

我读到了其他一些保存大型数据帧的方法。我正在使用 bz2.BZ2File & 我可以看到文件现在只有 50mb。但是,当我尝试加载数据时,出现以下错误,

UnpicklingError:泡菜数据被截断

有没有更好的方法来保存大型数据框?

标签: pythonpickle

解决方案


将数据框保存为 csv 文件会有所帮助。数据框包含的信息不仅仅是数据,因此在腌制时,此类数据框将转换为占用大量空间的字符串,而 csv 不会。

请注意,该方法to_csv甚至支持压缩。例如保存为 zip:

df.to_csv('filename.zip', compression='infer')

推荐阅读