MyServer有8GB的RAM,我正在使用PANDAS READ_CSV函数将CSV文件读取到DataFrame,但它以大于900MB的CSV大小为“杀死”。
请任何人帮助我处理这种情况。 我正在附上我的Meminfo,以获取有关如何在服务器上清除内存的建议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
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