【发布时间】:2017-08-07 09:39:09
【问题描述】:
我在 pandas 中有 3 亿行和 3 列。
我想将其转换为广泛的格式。
我估计在
当前的长格式为 9.6 GB。
我是这样做的
每个“单元”300,000,000 * 3 * 8 字节。
我想用 190 万行 * 1000 列。
我估计它应该占用 15.2 GB。
当我旋转时,内存使用量达到 64gb(Linux 资源监视器),而交换空间使用 30gb,然后 ipython 内核死亡,我假设这是与内存不足相关的死亡。
在生成数据透视表期间,RAM 使用量将飙升至超过我桌面的 64 GB RAM,我是否正确?为什么生成数据透视表会超出系统 RAM?
【问题讨论】:
-
为什么要估计当前表的大小?听起来你有一个 csv,而不是 pandas 表。根据我的经验,加载 2GB 的 csv 数据大约需要 14GB,加载后需要在内存中维护 3GB:这是在优化之后。如果没有优化,我会超过 24GB 的 RAM/swap,python 会崩溃。
-
您可能想在this 抢夺战利品
标签: python pandas pivot-table