尝试加载大型CSV文件时Python中的MemoryError

尝试加载大型CSV文件时Python中的MemoryError,python,r,csv,memory,Python,R,Csv,Memory,当我加载带有熊猫的大型CSV文件时,我会得到以下MemoryError: Traceback (most recent call last): File "/home/k/workspace/loans/src/loans.py", line 100, in <module> X_test = testdata('test_v2.csv') File "/home/k/workspace/loans/src/loans.py", line 18, in test

当我加载带有熊猫的大型CSV文件时,我会得到以下MemoryError:

Traceback (most recent call last):
  File "/home/k/workspace/loans/src/loans.py", line 100, in <module>
    X_test  =   testdata('test_v2.csv')
  File "/home/k/workspace/loans/src/loans.py", line 18, in testdata
    X   =   pd.read_table(filename, sep=',',    warn_bad_lines=True,    error_bad_lines=True)
  File "/usr/local/lib/python2.7/dist-packages/pandas/io/parsers.py", line 420, in parser_f
    return _read(filepath_or_buffer, kwds)
  File "/usr/local/lib/python2.7/dist-packages/pandas/io/parsers.py", line 225, in _read
    return parser.read()
  File "/usr/local/lib/python2.7/dist-packages/pandas/io/parsers.py", line 626, in read
    ret = self._engine.read(nrows)
  File "/usr/local/lib/python2.7/dist-packages/pandas/io/parsers.py", line 1070, in read
    data = self._reader.read(nrows)
  File "parser.pyx", line 727, in pandas.parser.TextReader.read (pandas/parser.c:6866)
  File "parser.pyx", line 777, in pandas.parser.TextReader._read_low_memory (pandas/parser.c:7452)
  File "parser.pyx", line 1788, in pandas.parser._concatenate_chunks (pandas/parser.c:20462)
MemoryError
回溯(最近一次呼叫最后一次):
文件“/home/k/workspace/loans/src/loans.py”,第100行,在
X_test=testdata('test_v2.csv'))
testdata中第18行的文件“/home/k/workspace/loans/src/loans.py”
X=pd.read_表(文件名,sep=',,warn_bad_line=True,error_bad_line=True)
parser\u f中的文件“/usr/local/lib/python2.7/dist packages/pandas/io/parsers.py”,第420行
返回读取(文件路径或缓冲区,kwds)
文件“/usr/local/lib/python2.7/dist packages/pandas/io/parsers.py”,第225行,已读
返回parser.read()
文件“/usr/local/lib/python2.7/dist packages/pandas/io/parsers.py”,第626行,已读
ret=自身。\发动机读取(nrows)
文件“/usr/local/lib/python2.7/dist packages/pandas/io/parsers.py”,第1070行,已读
数据=自身。\读卡器读取(nrows)
pandas.parser.textleader.read(pandas/parser.c:6866)中的文件“parser.pyx”,第727行
文件“parser.pyx”,第777行,位于pandas.parser.TextReader.\u read\u low\u内存中(pandas/parser.c:7452)
pandas.parser.中的文件“parser.pyx”,第1788行,连接块(pandas/parser.c:20462)
记忆者
文件大小为1 GB。R轻松地打开它(这很奇怪,因为如果我理解正确的话,R比Python更高级…)


我正在英特尔(R)核心(TM)i3CPU 550@3.20GHz上运行代码,内存为4GB。我正在Linux Ubuntu 12.04 32位上运行代码

有什么诀窍可以让它发挥作用吗


谢谢

是否安装了32位或64位python?从您的
dirs
来看,它看起来像Unix?作为旁注,没有一个标准来衡量一种语言的级别是否高于X。如果有人这么说,基本上并不意味着太多。pandas可能会产生一些开销(可能比R还多)-bit@UliK也许我误用了这个词。我认为有些语言可以更直接地访问内存,因此它们被认为是低级的(比如C++)。而用C++编写的语言则是更高级的,可能比C++慢或慢。