众所周知,Pandas是一个很强大的库,可用于数据分析。我们常常要使用Pandas来导入csv文件,进而通过编程对文件中的数据加以分析。
笔者在以前通常使用如下的方式来导入数据,一列一列的进行分析,十分便捷。
import csvfilename='aaa.csv'number=[]with open(filename) as f:reader = csv.reader(f)word=next(reader)for row in reader:number.append(int(row[0]))
今日,第一次使用pandas导入文件时产生了错误,第一次使用的代码如下
import pandas as pdfilename = 'aaa.csv'df=pd.read_csv(filename)print(df.head(5))
但出现了错误:UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xc9 in position 0: invalid continuation byte
笔者在百度上查找,尝试过很多方法,如将csv文件的编码改为UTF-8,将代码第三行改为:df=pd.read_csv(filename, encoding=“utf-8”)等等,结果都不尽如人意。最后经高人指点,加入(encoding=“gbk”),最终成功将csv文件导入,代码如下。
import pandas as pdfilename = 'jd.csv'df=pd.read_csv(filename, encoding="gbk")print(df.head(5))
笔者的导入文档如下图所示
笔者认为,不同类型的文档,应该需要不同的编码格式,在没有指出(encoding=“gbk”)时,python默认使用utf-8对文档进行操作,因此换成(encoding=“gbk”)后,可以正确的导入数据。由于笔者使用的文件含有数字,字符,汉字,可以推测大部分文档应该都可以使用gbk编码格式,因此具有一定的参考意义。
这时笔者的第一篇博客,兴起而写,可能没有太多技术含量,但也是笔者一个上午的功夫,在这里分享给大家。希望自己将来有空多多写博客,成为一个大博主。
如果觉得《Python使用Pandas导入csv文件产生错误的解决方式(UnicodeDecodeError)》对你有帮助,请点赞、收藏,并留下你的观点哦!