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

pod7payv  于 2023-09-27  发布在  Python
关注(0)|答案(1)|浏览(108)

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

  1. ParserError Traceback (most recent call last) <ipython-input-14-39a4e05f4c14> in <cell line: 1>()
  2. ----> 1 krediler_df = pd.read_csv('KREDILER.csv', encoding='ISO-8859-9', thousands=',', decimal='.')
  3. 2 ibra_tahsilat_df = pd.read_csv('IBRA_TAHSILAT.csv', encoding='ISO-8859-9', thousands=',', decimal='.')
  4. 3
  5. 4
  6. 5
  7. /usr/local/lib/python3.10/dist-packages/pandas/_libs/parsers.pyx in pandas._libs.parsers.raise_parser_error()
  8. 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

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

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

更多帮助

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

展开查看全部

相关问题