【发布时间】:2014-07-18 07:07:51
【问题描述】:
我有一个大约 100 mb 的 csv 文件。然后我有足够的内存,大约 8 Gb。在运行时,保守猜测,我没有超过 10 个包含整个 csv 文件的 pandas.DataFrames。所以很确定应该需要不超过 2 Gb 的内存。 getsizeof(dataframe) 也不会返回一个巨大的数字。然后在一个函数中,我执行以下操作:找到一个有趣的值,让它成为电机电流的轮廓。然后在bokeh 的图表中围绕该点绘制 10 秒(大约 300 个数据点),此外还有 4 个其他图表,用于电机电压、电机速度等。此函数在 for 循环中以相同的方式绘制大约 50 个图。变量是在本地定义的,因此每个循环都会覆盖它们。现在有个大问题:为什么我的记忆每次迭代都变得更饱满?有时它达到大约 7 Gb,我得到一个内存错误。我看不到我的数据在内部如何变得如此之大。内存问题甚至发生在 10 mb 大小的 csv 文件中。
【问题讨论】:
标签: python memory pandas bokeh