pandas pd.read_csv不适用于CSV文件大于900MB

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

MyServer有8GB的RAM,我正在使用PANDAS READ_CSV函数将CSV文件读取到DataFrame,但它以大于900MB的CSV大小为“杀死”。

请任何人帮助我处理这种情况。 我正在附上我的Meminfo,以获取有关如何在服务器上清除内存的建议

记忆信息图像

python csv pandas memory ipython
3个回答
4
投票

pandas

可以返回大型文件的迭代器。

import pandas as pd foo = pd.read_csv('bar.csv', iterator=True, chunksize=1000)

这将返回迭代器。然后,您可以使用for循环将操作应用于块中的数据。因此,它不会一次读取整个文件。块大小是每块的行数。

会这样:

for chunk in foo: # do something with chunk

eDit:

,您还必须在块中应用诸如
unique

0
投票
import numpy as np unique_foo = [] for i in df: unique_foo.append(i['foo'].unique()) unique_foo = np.unique(unique_eff)

(您应该更具体地说明您要键入的代码以及您收到的错误。)



如果不使用太大的文件,则应恢复到更基本的
pandas

软件包。如果您感觉更舒适,您仍然可以在数据框架中导入。 thim,例如:

csv
    

0
投票

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.