提问人:isalteverything 提问时间:10/10/2014 更新时间:9/3/2023 访问量:1777
drop_duplicates期间和之后的内存使用情况()
Memory usage during and after drop_duplicates()
问:
我正在处理一个数据帧,该数据帧占用大约 2 Gb 的内存(根据 htop),尺寸为 (6287475,19)。数据帧在数据类型上是异构的,这可能无关紧要。加载数据框后,我立即使用命令删除重复的行
df.drop_duplicates(inplace=True)
在执行此命令期间,内存使用率跳转到大约 7 Gb。命令完成后,内存将减少到近 5 Gb,这是存储数据帧的单个实例所需内存的两倍多。如果我随后删除数据帧,内存使用量将减少到大约 3 Gb。del df
如果我执行以下操作,则行为相同:
df2 = df.drop_duplicates
del df
del df2
运行不执行任何操作,并且终止 python 会话后,内存使用量将恢复到其基线水平。这看起来像是内存泄漏吗?有没有人看到过类似的行为?gc.collect()
环境:
- 64 位 Linux
- Python 2.7.7(64 位)
- 熊猫 0.14.1
- numpy 1.8.2
- Ipython 2.2.0(与 cpython 的行为相同)
答: 暂无答案
评论