pandas.errors.ParserError: Error tokenizing data. C error: Expected 1 fields in line 4, saw 2


pandas.errors.ParserError: Error tokenizing data. C error: Expected 1 fields in line 4, saw 2
"D:\Program Files\Python36-32\python.exe" D:/PyCharm_Project/bishe/process/read_csv.py
Traceback (most recent call last):
  File "D:/PyCharm_Project/bishe/process/read_csv.py", line 11, in <module>
    df = pd.read_csv(csv_path) #報錯
  File "D:\Program Files\Python36-32\lib\site-packages\pandas\io\parsers.py", line 676, in parser_f
    return _read(filepath_or_buffer, kwds)
  File "D:\Program Files\Python36-32\lib\site-packages\pandas\io\parsers.py", line 454, in _read
    data = parser.read(nrows)
  File "D:\Program Files\Python36-32\lib\site-packages\pandas\io\parsers.py", line 1133, in read
    ret = self._engine.read(nrows)
  File "D:\Program Files\Python36-32\lib\site-packages\pandas\io\parsers.py", line 2037, in read
    data = self._reader.read(nrows)
  File "pandas\_libs\parsers.pyx", line 860, in pandas._libs.parsers.TextReader.read
  File "pandas\_libs\parsers.pyx", line 875, in pandas._libs.parsers.TextReader._read_low_memory
  File "pandas\_libs\parsers.pyx", line 929, in pandas._libs.parsers.TextReader._read_rows
  File "pandas\_libs\parsers.pyx", line 916, in pandas._libs.parsers.TextReader._tokenize_rows
  File "pandas\_libs\parsers.pyx", line 2071, in pandas._libs.parsers.raise_parser_error
pandas.errors.ParserError: Error tokenizing data. C error: Expected 1 fields in line 4, saw 2

查了下資料,應該是我強行轉換格式(xlsx->csv)所引起的字符編碼問題
這里稍微總結一下由字符編碼問題引起的錯誤該如何解決辦法呢,如下:

  • 文件另存為csv
  • 如果不是像我那樣強轉所導致的,就增加分隔符參數
  df = pd.read_csv(csv_path)
  df = pd.read_csv(csv_path, encoding='utf-8',sep = '\t')

或者增添這個參數

  df = pd.read_csv(csv_path, error_bad_lines=False) #報錯

再或者增添這個參數

  df = pd.read_csv(csv_path, engine="python") #報錯

參考文章
https://www.jianshu.com/p/be233bdb4dbf
https://blog.csdn.net/shuiyixin/article/details/88930359


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM