我正在尝试将 CSV 文件读入 Pandas 中的 Dataframe 中。当我尝试这样做时,出现以下错误:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x96 in position 55: invalid start byte
这是来自代码:
import pandas as pd
location = r"C:\Users\khtad\Documents\test.csv"
df = pd.read_csv(location, header=0, quotechar='"')
这是在 Windows 7 Enterprise Service Pack 1 计算机上,它似乎适用于我创建的每个 CSV 文件。在这种特殊情况下,位置 55 的二进制文件是 00101001,位置 54 的二进制文件是 01110011(如果有的话)。
使用文本编辑器将文件另存为 UTF-8 似乎也没有帮助。同样,添加参数“encoding='utf-8'也不起作用——它会返回相同的错误。
导致此错误的最可能原因是什么?除了暂时放弃 DataFrame 构造并使用 csv 模块逐行读取 CSV 之外,还有其他解决方法吗?
最佳答案
尝试使用 encoding='latin1'
、encoding='iso-8859-1'
或 encoding=' 调用
(这些是 Windows 上发现的各种编码中的一些)。read_csv
cp1252'
关于csv - Panda read_csv 中的编码错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30462807/