我正在尝试在 pandas 中读取一个大的 csv 文件(大约 6 GB),但出现内存错误:
MemoryError Traceback (most recent call last)
<ipython-input-58-67a72687871b> in <module>()
----> 1 data=pd.read_csv('aphro.csv',sep=';')
...
MemoryError:
有什么帮助吗?
原文由 Rajkumar Kumawat 发布,翻译遵循 CC BY-SA 4.0 许可协议
该错误表明机器没有足够的内存来一次将整个 CSV 读入一个 DataFrame。假设您不需要一次将整个数据集全部存储在内存中,避免该问题的一种方法是 分块处理 CSV (通过指定
chunksize
参数):chunksize
参数指定每个块的行数。 (当然,最后一个块可能包含少于chunksize
行。)熊猫 >= 1.2
read_csv
与chunksize
返回一个上下文管理器,像这样使用:参见 GH38225