首页 > 解决方案 > UnicodeDecodeError:“utf-8”编解码器无法解码位置 136 中的字节 0xb0:无效的起始字节

问题描述

您好,我正在尝试读取 csv 文件。这是我的代码:

df = pd.read_csv("2021VAERSDATA.csv")

df.head()

这是我收到的错误:

---------------------------------------------------------------------------
UnicodeDecodeError                        Traceback (most recent call last)
pandas\_libs\parsers.pyx in pandas._libs.parsers.TextReader._convert_tokens()

pandas\_libs\parsers.pyx in pandas._libs.parsers.TextReader._convert_with_dtype()

pandas\_libs\parsers.pyx in pandas._libs.parsers.TextReader._string_convert()

pandas\_libs\parsers.pyx in pandas._libs.parsers._string_box_utf8()

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb0 in position 136: invalid start byte

我不知道如何纠正这个。任何建议将不胜感激!

编辑:

这是我文件的前 3 行:

VAERS_ID 再CVD 状态 AGE_YRS CAGE_YR CAGE_MO 性别 RPT_DATE SYMPTOM_TEXT 死亡 过时的 L_THREAT ER_VISIT 医院 招待日 X_STAY 禁用 恢复 VAX_DATE ONSET_DATE NUMDAYS LAB_DATA V_ADMINBY V_FUNDBY OTHER_MEDS CUR_ILL 历史 PRIOR_VAX SPLTTYPE FORM_VERS 今天的日期 天生缺陷 OFC_访问 ER_ED_VISIT 过敏
916600 2021 年 1 月 1 日 德克萨斯州 33 33 F 会厌右侧肿胀阻碍吞咽 2020 年 12 月 28 日 2020 年 12 月 30 日 2 没有任何 PVT 没有任何 没有任何 没有任何 2 2021 年 1 月 1 日 Pcn和蜂毒
916601 2021 年 1 月 1 日 加州 73 73 F 接种疫苗后约 30 分钟,患者表现出 SOB 和焦虑。事件发生时评估:心音正常,肺音清晰。患者生命体征在正常范围内。O2 91%,3 升 NC 连续流量。给予 2 次连续雾化沙丁胺醇治疗。在反应后大约 1.5 小时,患者的 SOB 和焦虑已经消退,患者表示他们感觉“好多了”。 2020 年 12 月 31 日 2020 年 12 月 31 日 0 住在护理机构的病人。见患者图表。 住在护理机构的病人。见患者图表。 住在护理机构的病人。见患者图表。 2 2021 年 1 月 1 日 “乳制品”

标签: pythonpandascsv

解决方案


这就是我阅读我的 csv 文件的方式,所以请尝试一下,让我知道它是否有效。

with open('file.csv', encoding="utf8") as csv_file:
    df = pd.read_csv(csv_file)
df.head()

如果您使用 open(file) 那么它将被视为字节并且不会发生解码。

编辑:

尝试以下编码值: encoding='cp1252' or encoding='utf-16' or encoding='ISO-8859-1'

或者最后的手段是忽略错误

with open('file.csv', encoding="utf8", errors='ignore') as csv_file:
    df = pd.read_csv(csv_file)
df.head()

推荐阅读