解析大量文件时出现内存错误



我正在解析6k csv文件,将它们合并为一个。我需要他们联合分析和训练ML模型。文件太多了,我的电脑只是简单地把它们连接起来就把内存用完了。


S = "

for csv_files:

# read the csv file
#df = df.append(pd.read_csv(f))
s = s + open(f, mode ='r').read()[32:] 

print(f)

file = open('bigdata.csv', mode = 'w')

file.write (s)

file.close ()


我需要一种方法来创建一个单一的数据集从所有文件(60gb)训练我的ML模型

我相信这可能会有帮助:

file = open('bigdata.csv', mode = 'w')
for f in csv_files:
s = open(f, mode='r').read()[32:]
file.write(s)
file.close()

相反,您的原始代码至少需要与输出文件大小相同的内存,它是60gb,可能比您的计算机内存还大。

然而,如果有一个单一的输入文件可能会耗尽您的内存,那么这个方法也会失败,在这种情况下,您可能需要逐行读取每个csv文件并将它们写入输出文件。我没有写这个方法,因为我不确定你的神奇数字32

最新更新