如何衡量导入大熊猫的内存占用量?

时间:2016-09-15 21:18:59

标签: python pandas

我在低内存系统上运行Python。

我想知道导入pandas是否会显着增加内存使用量。

目前我只想导入pandas,以便我可以使用date_range函数。

4 个答案:

答案 0 :(得分:3)

您可能还想使用Memory Profiler来了解为Pandas对象分配了多少内存。你可以使用几个Python Memory Profilers(一个简单的Google搜索可以给你一个想法)。 PySizer是我之前使用过的。

答案 1 :(得分:2)

您可以尝试使用info()的{​​{1}}方法,这样可以了解内存使用情况。

pd.DataFrame

我希望这有帮助!

答案 2 :(得分:0)

@Ginger我遇到了同样的问题。所以我设置了一个简单的函数来导入pandas并使用array ( 0 => array ( 'OrderProduct' => array ( 'pro_code' => 'B1', 'totalQTY' => '4', 'totalDistSalesQTY' => '360', ), ), 1 => array ( 'OrderProduct' => array ( 'pro_code' => 'B2', 'totalQTY' => '4', 'totalDistSalesQTY' => '600', ), ), 2 => array ( 'OrderProduct' => array ( 'pro_code' => 'B3', 'totalDistSalesQTY' => '600', ), ), 3 => array ( 'OrderProduct' => array ( 'pro_code' => 'B4', 'totalQTY' => '4', ), ), ) 。结论:大约memory-profiler内存用于在我的机器YMMV上导入pandas。

查看我在how much memory pandas import takes上写的这篇文章,你可以用它来测试你的机器。

答案 3 :(得分:0)

在我的脚本中引入了大熊猫并加载了具有0.8MB数据的数据帧后,运行该脚本并惊讶地发现内存使用量从13MB增加到了49MB。我怀疑我现有的脚本有一些内存泄漏,并且我使用内存分析器检查了消耗大量内存的内存,最后的罪魁祸首是熊猫。仅将库加载到内存的import语句大约需要30MB。仅导入特定项目(例如,从pandas import Dataframe导入)对节省内存没有太大帮助。

import pandas仅占用大约30MB内存

完成导入后,可以使用print(df.memory_usage(deep=True))来检查数据帧对象的内存,具体取决于加载到数据帧的数据