熊猫index.intersect中的内存泄漏?

时间:2020-04-01 09:48:29

标签: python pandas indexing

我正在尝试计算两个多指标bsGroupIdxshotsDiffand的交集。看来index.intersect()方法正在泄漏内存。

 print( f"bsGroupIdx  {bsGroupIdx.nbytes/1e6} Mb")
 print( f"shotsDiff.index  {shotsDiff.index.nbytes/1e6} Mb")
 print( f"1 | process mem  {process.memory_info().rss/1e6} Mb")
 bsBinIdx   = bsGroupIdx.intersection(shotsDiff.index)
 print( f"2 | process mem  {process.memory_info().rss/1e6} Mb")

输出为:

bsGroupIdx  3.36316 Mb
shotsDiff.index  0.083512 Mb
1 | process mem  10822.488064 Mb
2 | process mem  10840.846336 Mb

因此,两个具有〜3.5Mb大小的对象的交集最终使我损失了〜18 Mb的内存。由于我是在循环执行此操作,因此情况迅速爆发。

有人知道如何处理吗?是否可能与此处建议的索引不变有关? Memory leak in python pandas reshuffling index

非常感谢!

0 个答案:

没有答案