Pandas.to_csv占用的空间大于内存使用量



我有一个DataFrame,它的内存使用量为159.7MB。当我使用.to_csv方法将其写入存储器时,写入的文件大约为400 MB。当我加载这个文件时,它的内存使用量是159.7MB。对于这种大小差异,有什么解释吗?如何写才能减少硬盘空间?感谢您的帮助

如果DataFrame包含strs,请尝试使用制表符而不是逗号作为分隔符。这可以节省你对报价的需求。

df.to_csv('new_file.csv', sep='t')

减小csv大小的最简单方法是在写入时使用to_csv中的compression参数对其进行压缩。例如df.to_csv(compression='gzip')

内存使用量与磁盘上csv的大小可能有很多不同的原因,如果不知道所处理数据的任何细节,就很难说。

一个通用的建议是,如果你写的是一堆精度为15个小数点的数字或其他会占用大量空间的数字,请检查数据帧中任何浮点值的精度。尝试将这些值截断到所需的精度。

最新更新