熊猫数据框导入和渲染不正确,并导致UnicodeDecodeError

时间:2019-10-22 02:50:14

标签: python pandas

我正在尝试导入包含汉字的csv。

此命令是下载csv文件

!wget -O wm.csv https://raw.githubusercontent.com/hierarchyJK/compare-LIBSVM-with-Linear-and-Gassian-Kernel/master/%E8%A5%BF%E7%93%9C3.0.csv

该存储库不是我的存储库,所以我不确定它的编码方式是否正确。

我可以肯定的是,renders正确。

此代码

pd.read_csv('wm.csv',encoding = 'utf-8')

导致此错误

  

'utf-8'编解码器无法解码位置0的字节0xb1:无效的起始字节

我已经搜索了此错误,找不到合适的rca和解决方案。

此代码正确执行

pd.read_csv('wm.csv',encoding = 'cp1252')

但呈现乱码

enter image description here

系统正确显示汉字。

enter image description here

使用python打开命令

with open('wm.csv', 'r', encoding='cp1252') as f:
    for line in f.readlines():
        print(line)
        break

此代码呈现乱码,没有任何警告或错误。

±àºÅ,É«Ôó,¸ùµÙ,ÇÃÉù,ÎÆÀí,Æ겿,´¥¸Ð,ÃܶÈ,º¬ÌÇÂÊ,ºÃ¹Ï,Ðò¹Øϵ

3 个答案:

答案 0 :(得分:1)

编码为“ GB18030”。通过在文本编辑器中打开文件并检查建议的编码,我发现了这一点。当您转到github链接并单击编辑文件时,Github实际上还会向您显示编码

答案 1 :(得分:1)

您应该使用encoding="GBK"。希望这会有所帮助。

df = pd.read_csv('wm.csv', encoding="GBK")

更多详细信息,请检查HERE

答案 2 :(得分:0)

这里是所有标准编码的链接。当我遇到问题时,Latin_1对我来说效果很好,但是在您的情况下,您可以尝试utf_16_be。祝你好运!!

Standard Encodings