Python pandas阅读csv ParserError:标记数据时出错

pod7payv  于 12个月前  发布在  Python
关注(0)|答案(1)|浏览(82)

难以阅读.csv文件,我得到这个错误:

ParserError Traceback (most recent call last) <ipython-input-14-39a4e05f4c14> in <cell line: 1>() 
----> 1 krediler_df = pd.read_csv('KREDILER.csv', encoding='ISO-8859-9', thousands=',', decimal='.') 
      2 ibra_tahsilat_df = pd.read_csv('IBRA_TAHSILAT.csv', encoding='ISO-8859-9', thousands=',', decimal='.') 
      3 
      4 
      5 
/usr/local/lib/python3.10/dist-packages/pandas/_libs/parsers.pyx in pandas._libs.parsers.raise_parser_error() 
ParserError: Error tokenizing data. C error: Expected 3 fields in line 5, saw 5

我是否应该更改该文件上的任何内容,例如是否应该将其转换为.xlsx,以及哪些列和行有问题?

30byixjq

30byixjq1#

问题的原因

在 * KREDILER.csv * 的行3处,pd.read_csv找到5个单元格,而不是预期的3个(前几行)。这可能与它被要求查找的分隔符有关?一些特殊的人物?

你可以试试

添加参数on_bad_lines='skip',如Python Pandas Error tokenizing data

pd.read_csv('KREDILER.csv', encoding='ISO-8859-9', 
            thousands=',', decimal='.', 
            on_bad_lines='skip')

但是,请记住,它不会解决您的问题,只能跳过发现不适合的行。

更多帮助

考虑将文件的一部分作为文本打印在问题的正文中,这样我们就可以看到第3行有什么问题。

相关问题