Python一直消耗更多的内存,直到崩溃为止

问题描述 投票:0回答:1

更新:我已经意识到,每次新运行都会创建一个新的Python控制台,这会导致更多的内存消耗。我必须打开为每次运行创建新控制台的设置。当我出于某种原因升级到Pycharm pro时,会自动启用此功能。现在,内存消耗稳定。

这是我第一次在此网站上发布文章,而且我是一名新程序员,完成了我的第一个实际应用的实际项目。长话短说,我的项目创建了一个名为'pressure_drop'的csv,我想使用下面的代码创建一个新的pandas数据框。本示例中的pressure_drop.csv具有10150行和12列。如您所见,我正在删除一些不需要显示的列,然后通过分配行和列索引来创建数据框。最后,它被打印到一个新的.csv文件中,该文件更具可读性,以至于我将使用创建交互式图表等。

问题是,每次在控制台中运行代码时,Python都会占用更多的内存空间;如果代码运行了足够的次数,Python最终会崩溃。您能帮我理解为什么会这样吗?

例如,每次为上述数据集运行代码时,Python都要多占用100 MB的内存。

import pandas as pd

def data_frame_creator(result_array):
    array = results_csv_loader(result_array)
    array=np.delete(array,[3,4,5,6,7],1)
    len = array.shape
    row_count = len[0] +1
    df = pd.DataFrame(data = array, index=[np.arange(1,row_count)], columns=columns.dataframe_columns)
    df.to_csv('Output.csv')

data_frame_creator('pressure_drop.csv')

更新:我已经意识到,每次新运行都会创建一个新的Python控制台,这会导致更多的内存消耗。我必须打开为每次运行创建新控制台的设置。此功能...

python python-3.x pandas memory-management out-of-memory
1个回答
0
投票

在不知道数据框是什么样以及想要哪些列的情况下,很难知道您要执行的操作。也许您正在寻找的功能是read_csv?例如:

© www.soinside.com 2019 - 2024. All rights reserved.