UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xb1 in position 0: invalid start byte的解决办法

今天在读取一个从国家统计局下载的csv表格的时候遇到如上报错:
UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xb1 in position 0: invalid start byte的解决办法_第1张图片
一看就知道是字符编码问题,但是到底要编码成哪种格式才是正确的呢? 掌柜搜了一下相关问题的解决方案,发现高赞给的答案是下面这个:
UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xb1 in position 0: invalid start byte的解决办法_第2张图片
于是掌柜尝试过后发现并不能完全解决问题。。。在Province这一列还是出现的乱码。。。然后掌柜突然反应过来,Province这一列都是中文,一般中文编码都是用的gbk,所以应该是encoding = ‘gbk’ 才对吧。带着这样的想法填入后,再次运行,成功加载出全国各省近5年的GDP数据!
UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xb1 in position 0: invalid start byte的解决办法_第3张图片

总结:
所以编码问题还是要看具体数据类型来处理。大多数encoding='utf-8’即可解决,但是如果表格包含中文,建议encoding='gbk’处理。

参考资料:
UnicodeDecodeError: ‘utf8’ codec can’t decode byte 0xa5 in position 0: invalid start byte

你可能感兴趣的:(数据分析,数据分析,pandas,csv,中文编码gbk)