解决pandas read_csv 读取中文列标题文件报错的问题


Posted in Python onJune 15, 2018

从windows操作系统本地读取csv文件报错

data = pd.read_csv(path)
Traceback (most recent call last):

 File "C:/Users/arron/PycharmProjects/ML/ML/test.py", line 45, in <module>
  data = pd.read_csv(path)
 File "C:\Users\arron\AppData\Local\Continuum\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 655, in parser_f
  return _read(filepath_or_buffer, kwds)
 File "C:\Users\arron\AppData\Local\Continuum\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 405, in _read
  parser = TextFileReader(filepath_or_buffer, **kwds)
 File "C:\Users\arron\AppData\Local\Continuum\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 762, in __init__
  self._make_engine(self.engine)
 File "C:\Users\arron\AppData\Local\Continuum\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 966, in _make_engine
  self._engine = CParserWrapper(self.f, **self.options)
 File "C:\Users\arron\AppData\Local\Continuum\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 1582, in __init__
  self._reader = parsers.TextReader(src, **kwds)
 File "pandas\_libs\parsers.pyx", line 394, in pandas._libs.parsers.TextReader.__cinit__ (pandas\_libs\parsers.c:4209)
 File "pandas\_libs\parsers.pyx", line 712, in pandas._libs.parsers.TextReader._setup_parser_source (pandas\_libs\parsers.c:8895)
OSError: Initializing from file failed

上述报错的解决方案是

pwd = os.getcwd()
os.chdir(os.path.dirname(path))
data = pd.read_csv(os.path.basename(path))
os.chdir(pwd)

此时又报如下错误:

Traceback (most recent call last):
 File "C:/Users/arron/PycharmProjects/ML/ML/test.py", line 47, in <module>
  data = pd.read_csv(os.path.basename(path))
 File "C:\Users\arron\AppData\Local\Continuum\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 655, in parser_f
  return _read(filepath_or_buffer, kwds)
 File "C:\Users\arron\AppData\Local\Continuum\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 405, in _read
  parser = TextFileReader(filepath_or_buffer, **kwds)
 File "C:\Users\arron\AppData\Local\Continuum\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 762, in __init__
  self._make_engine(self.engine)
 File "C:\Users\arron\AppData\Local\Continuum\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 966, in _make_engine
  self._engine = CParserWrapper(self.f, **self.options)
 File "C:\Users\arron\AppData\Local\Continuum\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 1582, in __init__
  self._reader = parsers.TextReader(src, **kwds)
 File "pandas\_libs\parsers.pyx", line 562, in pandas._libs.parsers.TextReader.__cinit__ (pandas\_libs\parsers.c:6175)
 File "pandas\_libs\parsers.pyx", line 781, in pandas._libs.parsers.TextReader._get_header (pandas\_libs\parsers.c:9691)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd7 in position 0: invalid continuation byte

最终解决方案是:

pwd = os.getcwd()
os.chdir(os.path.dirname(path))
data = pd.read_csv(os.path.basename(path),encoding='gbk')
os.chdir(pwd)

以上这篇解决pandas read_csv 读取中文列标题文件报错的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 判断一个进程是否存在
Apr 09 Python
python中私有函数调用方法解密
Apr 29 Python
Python中在for循环中嵌套使用if和else语句的技巧
Jun 20 Python
python 实现在txt指定行追加文本的方法
Apr 29 Python
详解利用django中间件django.middleware.csrf.CsrfViewMiddleware防止csrf攻击
Oct 09 Python
为什么str(float)在Python 3中比Python 2返回更多的数字
Oct 16 Python
解决新版Pycharm中Matplotlib图像不在弹出独立的显示窗口问题
Jan 15 Python
Python OpenCV图像指定区域裁剪的实现
Oct 30 Python
浅谈python print(xx, flush = True) 全网最清晰的解释
Feb 21 Python
python3.8动态人脸识别的实现示例
Sep 21 Python
利用python为PostgreSQL的表自动添加分区
Jan 18 Python
python必学知识之文件操作(建议收藏)
May 30 Python
Python使用Pickle库实现读写序列操作示例
Jun 15 #Python
基于Pandas读取csv文件Error的总结
Jun 15 #Python
解决pandas使用read_csv()读取文件遇到的问题
Jun 15 #Python
python微信公众号之关键词自动回复
Jun 15 #Python
使用NumPy和pandas对CSV文件进行写操作的实例
Jun 14 #Python
python 读取.csv文件数据到数组(矩阵)的实例讲解
Jun 14 #Python
python的pandas工具包,保存.csv文件时不要表头的实例
Jun 14 #Python
You might like
?繁体转换的class
2006/10/09 PHP
php中的一个中文字符串截取函数
2007/02/14 PHP
PHP伪静态写法附代码
2008/06/20 PHP
php引用地址改变变量值的问题
2012/03/23 PHP
自己写的兼容低于PHP 5.5版本的array_column()函数
2014/10/24 PHP
微信第三方登录(原生)demo【必看篇】
2017/05/26 PHP
PHP生成随机数的方法总结
2018/03/01 PHP
Laravel核心解读之异常处理的实践过程
2019/02/24 PHP
createElement与createDocumentFragment的点点区别小结
2011/12/19 Javascript
js前台判断开始时间是否小于结束时间
2012/02/23 Javascript
javascript学习笔记(三) String 字符串类型介绍
2012/06/19 Javascript
针对初学者的jQuery入门指南
2015/08/15 Javascript
全面总结Javascript对数组对象的各种操作
2017/01/22 Javascript
基于JavaScript实现飘落星星特效
2017/08/10 Javascript
vue router嵌套路由在history模式下刷新无法渲染页面问题的解决方法
2018/01/25 Javascript
javascript严格模式详解(含严格模式与非严格模式的区别)
2019/11/12 Javascript
在博客园博文中添加自定义右键菜单的方法详解
2020/02/05 Javascript
通过javascript实现扫雷游戏代码实例
2020/02/09 Javascript
vue实现顶部菜单栏
2020/11/08 Javascript
Sanic框架应用部署方法详解
2018/07/18 Python
Python3匿名函数用法示例
2018/07/25 Python
Python中创建二维数组
2018/10/17 Python
Python内置方法实现字符串的秘钥加解密(推荐)
2019/12/09 Python
Python configparser模块配置文件过程解析
2020/03/03 Python
解决c++调用python中文乱码问题
2020/07/29 Python
CSS3 rgb and rgba(透明色)的使用详解
2020/09/25 HTML / CSS
法国美发器材和产品购物网站:Beauty Coiffure
2016/12/05 全球购物
JD Sports法国:英国篮球和运动时尚的领导者
2017/09/28 全球购物
荷兰最大的多品牌男装连锁店:Adam Brandstore
2019/12/31 全球购物
英语专业毕业生自荐信
2013/10/28 职场文书
大学毕业后的十年规划
2014/01/07 职场文书
英文商务邀请信
2014/01/22 职场文书
党的群众路线教育实践活动学习笔记
2014/11/05 职场文书
邀请函怎么写
2015/01/30 职场文书
集团财务总监岗位职责
2015/04/03 职场文书
培训班开班主持词
2015/07/02 职场文书