python - Pandas 在一台计算机上抛出 ParserError 但在另一台计算机上则不会

标签 python python-3.x pandas

这是我的代码,它在我 friend 的计算机上运行得很好:

#!/usr/bin/python

import pandas as pd

df = pd.read_csv("report.csv")
df = df.drop("Agent Name", axis=1)
df.to_csv("agent_report_updated.csv")

这是我收到的错误:

Traceback (most recent call last):
  File "./agent_calls_report.py", line 10, in <module>
    df = pd.read_csv("report.csv")
  File "/usr/lib/python3.7/site-packages/pandas/io/parsers.py", line 678, in parser_f
    return _read(filepath_or_buffer, kwds)
  File "/usr/lib/python3.7/site-packages/pandas/io/parsers.py", line 446, in _read
    data = parser.read(nrows)
  File "/usr/lib/python3.7/site-packages/pandas/io/parsers.py", line 1036, in read
    ret = self._engine.read(nrows)
  File "/usr/lib/python3.7/site-packages/pandas/io/parsers.py", line 1848, in read
    data = self._reader.read(nrows)
  File "pandas/_libs/parsers.pyx", line 876, in pandas._libs.parsers.TextReader.read
  File "pandas/_libs/parsers.pyx", line 891, in pandas._libs.parsers.TextReader._read_low_memory
  File "pandas/_libs/parsers.pyx", line 945, in pandas._libs.parsers.TextReader._read_rows
  File "pandas/_libs/parsers.pyx", line 932, in pandas._libs.parsers.TextReader._tokenize_rows
  File "pandas/_libs/parsers.pyx", line 2112, in pandas._libs.parsers.raise_parser_error
pandas.errors.ParserError: Error tokenizing data. C error: Expected 34 fields in line 3, saw 35

知道为什么这可以在一台计算机上运行而不能在另一台计算机上运行吗?编辑:我已经确认我们使用的是相同版本的 Python (3.7.1) 和 Pandas,唯一的区别是他有一台 Mac,而我在 Linux 上。

最佳答案

我认为这是编码问题

试试这个:

import pandas as pd
df = pd.read_csv("report.csv",encoding='cp1252')
df = df.drop("Agent Name", axis=1)
df.to_csv("agent_report_updated.csv")

还有其他编码选项,您可以尝试使用 utf-8 而不是 cp1252。 Here是使用的编码列表。

关于python - Pandas 在一台计算机上抛出 ParserError 但在另一台计算机上则不会,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53529678/

相关文章:

python - 从原点和偏移量创建 Pandas DatetimeIndex

python - 对数正态分布的均值和标准差与分析值不匹配

python - 获取向后写入的字符串的后半部分

python - os.getcwd() 和 os.path.dirname(__file__) 的区别

python - 计算 Python 列表中的类实例

python-3.x - python : I want to fill the null values only where the whole row is null

python - 如何在 Pandas 中设置特定的单元格值?

Python脚本长执行函数

python - 迭代期间运行时错误?

python - 在字典的字典中查找计数最高的元素