繁体   English   中英

pandas.read_csv() 不加载特殊字符

[英]pandas.read_csv() does not load special characters

我正在从包含特殊字符(如 €、ă 或 ș)的 .csv 文件加载数据集。

通常,它们应该可以使用 UTF-8 编码加载,但是在 jupyter notebook 中显示它们时,所有这些字符都无法正确呈现。

示例: 25 000 €被视为在此处输入图片说明

我用来加载 .csv 文件的代码:

inter_df = pd.read_csv(
            f,
            header=0,
            sep='|',
            encoding='utf-8',
            engine='python',
            error_bad_lines=False
        )

任何人都可以提出有关如何处理这些特殊字符的解决方案吗?

你看到的是 Windows-1252 编码解释一个 UTF-8 字符。 UTF-8 中的欧元是 E282AC,它对应于 Windows-1252 á ¬ ¬。 我不认为这是 Pandas 问题,因为您的文件已使用 utf-8 解码器正确解码,否则应该有错误。 由于您提到在 jupyter notebook 中加载它,因此显示的编码由您的浏览器决定。 通常,jupyter 会发送一个Content-Type标头并指定字符集为 UTF-8。 但是,如果 jupyter 太旧或浏览器太旧,他们可能不会使用此属性(据我所知,如果您未将 IE 编码设置设置为自动,IE 11 将忽略此属性)。 因此浏览器将尝试以 Windows-1252 编码解释这些字符。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM