加载csv文件时出现内存错误?

时间:2016-11-09 20:12:28

标签: python csv ubuntu pandas ram

我有一台8 GB内存的Ubuntu笔记本电脑。还有一个2 GB的CSV文件但是当我使用pandas方法 read_csv 加载我的数据时,ram完全被填满,而有7 GB ram自由 。 2 GB文件如何填充7 GB ram?

2 个答案:

答案 0 :(得分:1)

你得到这个low_memory警告的原因可能是因为猜测每列的dtypes是非常需要内存的。 Pandas试图通过分析每列中的数据来确定要设置的dtype。

如果使用32位系统: 在Windows中使用32位版本时,python会发生很多内存错误。这是因为默认情况下32位进程只能获得2GB内存。

试试这个:

tp = pd.read_csv('file_name.csv', header=None, chunksize=1000)
df = pd.concat(tp, ignore_index=True)

答案 1 :(得分:0)

尝试使用chunksize参数:

df = pd.concat((chunk for chunk in pd.read_csv('/path/to/file.csv', chunksize=10**4)),
               ignore_index=True)