【问题标题】:upickling error data was truncated - better way to save large dataframeupickling 错误数据被截断 - 保存大型数据帧的更好方法
【发布时间】:2021-03-29 15:17:35
【问题描述】:

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

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

UnpicklingError:pickle 数据被截断

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

【问题讨论】:

  • 您是否尝试将其保存为 csv?虽然写入时间稍慢,但还不错。之后可以压缩 csv。
  • 谢谢,效果很好。如果您将答案写为评论,我会将其标记为正确

标签: python pickle


【解决方案1】:

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

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

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

【讨论】:

    猜你喜欢
    • 2014-11-06
    • 1970-01-01
    • 2012-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多