【问题标题】:Memory error in combination with pandas, bokeh and python 2.7与 pandas、bokeh 和 python 2.7 结合使用的内存错误
【发布时间】: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


    【解决方案1】:

    即使在函数的生命周期结束后,Python 也没有释放内存。 del variablename 也没有释放内存。

    这成功了:

    import gc
    
    gc.collect()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-06-28
      • 1970-01-01
      • 1970-01-01
      • 2018-04-04
      • 2015-09-01
      • 2015-03-05
      相关资源
      最近更新 更多