使用Pandas读取大型文本文件

时间:2014-05-01 16:09:29

标签: python csv pandas ipython large-files

我一直试图用Pandas读取一些大文本文件(大小约为1.4GB - 2GB),使用read_csv函数,但没有用。以下是我使用的版本:

  • Python 2.7.6
  • Anaconda 1.9.2(64位)(默认,2013年11月11日,10:49:15)[MSC v.1500 64 bit(AMD64)]
  • IPython 1.1.0
  • Pandas 0.13.1

我尝试了以下内容:

df = pd.read_csv(data.txt')

它崩溃了Ipython并留言:Kernel died, restarting

然后我尝试使用迭代器:

tp = pd.read_csv('data.txt', iterator = True, chunksize=1000)

再次,我收到Kernel died, restarting错误。

有什么想法吗?或者以其他方式阅读大文本文件?

谢谢!

1 个答案:

答案 0 :(得分:6)

在发布此问题后的某个时间,here给出了类似问题的解决方案。基本上,它建议通过执行以下操作来阅读chunks中的文件:

chunksize = 10 ** 6
for chunk in pd.read_csv(filename, chunksize=chunksize):
    process(chunk)

您应该根据机器的功能指定chunksize参数(即,确保它可以处理块)。