全网云盘资源分享群

read_csv报错Initializing from file failed ,pandas.read_csv不能读取中文内容报错‘utf-8‘ codec can‘t decode byte

import pandas as pd
f=open("C:/Users/qa124/Desktop/北京地区信息.csv",encoding='utf-8')
myfile=pd.read_csv(f)   //文件名中含有中文字符是不能直接作为read_csv的参数

上面的不行下面的试试

dataPathBj=pd.read_csv( 'C:/Users/qa124/Desktop/北京地区信息.csv',encoding='gbk')
dataPathBj

此外还有报错信息:

UnicodeDecodeError: ‘gbk’ codec can’t decode byte 0xab in position
11126: illegal multibyte sequence

说明文本的解码出现了问题,文本中出现了‘gbk’无法解码的特殊符号,可以换用解码范围更广的‘gb18030’或’utf-8’

read_csv报错Initializing from file failed

即使路径、文件名都完整,还是报错的原因是这个参数中有中文,参考了错误原因和pandas的源码,发现调用pandas的read_csv()方法时,默认使用C engine作为parser engine,而当文件名中含有中文的时候,用C engine在部分情况下就会出错。所以在调用read_csv()方法时指定engine为Python就可以解决问题了。

dataPathBj=pd.read_csv( 'C:/Users/qa124/Desktop/北京地区信息.csv',engine='python')

对于第二种情况还有另外一种解决方法,就是使员工open函数打开文件,再取访问里面的数据:

dataPathBj=pd.read_csv(open( 'C:/Users/qa124/Desktop/北京地区信息.csv'))
dataPathBj

好了这个报错的原因都了解了,解决方法也很简单粗暴,是不是很简短简单!

posted @ 2021-05-12 22:31  颖火虫赵云  阅读(84)  评论(0)    收藏  举报  来源
|