簡體   English   中英

在python中使用熊貓加載.csv文件時出錯

[英]Errors when loading .csv file using pandas in python

我有一個大的csv文件,大約6gb,要花很多時間才能加載到python。 我收到以下錯誤:

import pandas as pd
df = pd.read_csv('nyc311.csv', low_memory=False)


Python(1284,0x7fffa37773c0) malloc: *** mach_vm_map(size=18446744071562067968) failed (error code=3)
*** error: can't allocate region
*** set a breakpoint in malloc_error_break to debug
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pandas/io/parsers.py", line 646, in parser_f
    return _read(filepath_or_buffer, kwds)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pandas/io/parsers.py", line 401, in _read
    data = parser.read()
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pandas/io/parsers.py", line 939, in read
    ret = self._engine.read(nrows)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pandas/io/parsers.py", line 1508, in read
    data = self._reader.read(nrows)
  File "pandas/parser.pyx", line 851, in pandas.parser.TextReader.read (pandas/parser.c:10438)
  File "pandas/parser.pyx", line 939, in pandas.parser.TextReader._read_rows (pandas/parser.c:11607)
  File "pandas/parser.pyx", line 2024, in pandas.parser.raise_parser_error (pandas/parser.c:27037)
pandas.io.common.CParserError: Error tokenizing data. C error: out of memory

我不認為我正在理解錯誤代碼,最后一行似乎表明文件太大而無法加載? 我也嘗試過low_memory=FALSE選項,但這也不起作用。

我不確定“無法分配區域”是什么意思,標題是否可能包含“區域”而熊貓無法在其下方找到該列?

由於RAM,發生內存不足問題。 沒有其他解釋。

RAM中對象的所有數據存儲器開銷總和!<RAM

malloc: *** mach_vm_map(size=18446744071562067968) failed您可以從此錯誤聲明中清楚地了解。

嘗試使用。

df = pd.read_csv('nyc311.csv',chunksize =5000,lineterminator='\r')

或者,如果讀取此csv只是程序的一部分,並且之前創建了其他數據框,請嘗試在不使用它們的情況下對其進行清理。

import gc
del old_df              #clear dataframes not in use
gc.collect()        # collect Garbage 
del gc.garbage[:]   # Clears RAM

`

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM