pandas中DataFrame对象to_csv()方法中的encoding参数
当使用pd.read_csv()方法读取csv格式文件的时候,常常会因为csv文件中带有中文字符而产生字符编码错误,造成读取文件错误,在这个时候,我们可以尝试将pd.read_csv()函数的encoding参数设置为"gbk"或者"utf-8"。(这个方法在上一篇博客有介绍)
据我个人经验总结(如果有错误,还希望大神斧正),在含有中文编码的情况下,to_csv()方法的encoding参数默认为"gbk",而read_csv()方法的encoding参数默认为"utf-8",所以最好的防止由于编码出错导致读取错误的方法就是在to_csv()和read_csv()方法同时显式地设置相同的encoding参数。
下面来谈谈出现编码错误的原因。
原来当我们将pandas的DataFrame对象转化为csv格式文件写入硬盘的时候调用的to_csv()函数可以接受一个encoding参数(这个encoding参数决定了写入csv文件所用的编码方式)。同样的,当我们调用pd.read_csv()函数来讲csv文件读取成DataFrame对象的时候,也要传入一个与之对应的encoding参数,如下代码例子(这里的encoding编码格式设置为"utf-8"):
![](/assets/blank.gif)
1 import pandas as pd2 import numpy as np3 4 head = ["表头1" , "表头2" , "表头3"]5 l = [[1 , 2 , 3],[4,5,6] , [8 , 7 , 9]]6 df = pd.DataFrame (l , columns = head)7 df.to_csv ("testfoo.csv" , encoding = "utf-8") 8 9 df2 = pd.read_csv ("testfoo.csv" , encoding = "utf-8") 10 print (df2)
![](/assets/blank.gif)
结果如下:
Unnamed: 0 表头1 表头2 表头3 0 0 1 2 3 1 1 4 5 6 2 2 8 7 9
转载于:https://www.cnblogs.com/telwanggs/p/10402291.html
pandas中DataFrame对象to_csv()方法中的encoding参数相关推荐
- python中类方法与实例方法的区别-Python中的对象,方法,类,实例,函数用法分析...
本文实例分析了Python中的对象,方法,类,实例,函数用法.分享给大家供大家参考.具体分析如下: Python是一个完全面向对象的语言.不仅实例是对象,类,函数,方法也都是对象. class Foo ...
- java分布式对象——远程方法中的参数和返回值+远程对象激活
[0]README 1)本文文字描述转自 core java volume 2, 旨在学习 java分布式对象--远程方法中的参数和返回值+远程对象激活 的相关知识: [1]远程方法中的参数和返回值 ...
- java中的request对象_java中request对象各种方法的使用实例分析
本文实例讲述了java中request对象各种方法的使用.分享给大家供大家参考,具体如下: request对象是从客户端向服务器端发出请求,包括用户提交的信息以及客户端的一些信息.request对象是 ...
- 已解决pandas创建DataFrame对象失败
已解决(pandas创建DataFrame对象失败)ValueError: Shape of passed values is (1509, 1), indices imply (1509, 2) 文 ...
- 用python绘制熊猫图案_使用pandas的DataFrame的plot方法绘制图像的实例
使用了pandas的Series方法绘制图像体验之后感觉直接用matplotlib的功能好用了不少,又试用了DataFrame的方法之后发现这个更加人性化. 写代码如下: from pandas im ...
- js中match、replace方法中使用正则表达式
为什么80%的码农都做不了架构师?>>> js中match.replace方法中使用正则表达式 (2012-06-29 14:23:37) 转载▼ 标签: 字符串 飞雪 正则表 ...
- Python Pandas的DataFrame对象中轴的意义,axis=0 或者axis=1代表什么意思?
Python Pandas的DataFrame对象中轴的意义,axis=0 或者axis=1代表什么意义? 通常来说:axis = 0代表行, axis=1代表列. 一.从删除操作来看axis: 举个 ...
- 解决vue中无法取得methods方法中的return值
解决vue中无法取得methods方法中的return值 参考文章: (1)解决vue中无法取得methods方法中的return值 (2)https://www.cnblogs.com/betty- ...
- 【C++】栈中实例化对象与堆中实例化对象
一. 实例化对象写法的区别 栈中实例化对象: 堆中实例化对象: 最大区别就在于,从栈中申请内存,在使用完后无需释放,但是从堆中申请内存,使用完以后必须释放! 注意:从堆中申请内存,是有可能失败的,所以 ...
最新文章
- php图片保存在mysql_php实现上传图片保存到数据库的方法
- 211.Alpha多样性箱线图(样章,11图2视频)
- jmeter发送json数据,报405、400错误解决方案
- python 四种逐行读取文件内容的方法
- # 删除注册表项键值_强制删除:让你的电脑上不再有“顽固”程序
- airpods删除别人的配对_怎么不让别人连我的airpods
- [转]如何处理机器学习中的不平衡类别
- 解决Github加载ipynb文件缓慢/失败
- int在c语言中的作用,C语言中int,Uint,uint16等有什么区别以及用处
- x264码率控制介绍、配置及应用
- (八:2020.08.27)CVPR 2020 追踪之论文纲要(译)
- 威廉玛丽学院计算机专业好吗,威廉玛丽学院计算机
- 为程序员提供一杯免费咖啡
- 5G网络优化工程师是做什么的?4大工作职责!
- 云办公系统 skyeye v3.7.16 部分企业版开源
- 快速获取一个网站的所有资源,图片,html,css,js......扒站,仿站必备工具
- 【区块链 | Compound】1.剖析DeFi借贷产品之Compound:概述篇
- java编译找不到文件_java报错找不到文件解决方法
- HDU 1718 Rank counting sort解法
- python 爬取某音乐各排行榜【简易版本】
热门文章
- 两张照片重叠处半透明_那些悬浮在空中的照片是怎么拍的?
- (01)System Verilog验证理论
- (26)FPGA面试技能提升篇(DDC、DUC、QMC)
- (6)FPGA面试技能提升篇(OpenCV)
- java中类定义修饰符_Java 中类和方法修饰符
- python高手之路(第3版)_Python高手之路(第3版)
- python数据结构和算法讲解_【学习】python数据结构和算法
- 今日头条电脑版官方版_雷霆拯救电脑版-雷霆拯救pc版下载v4.0.9 官方版
- 公务员计算机软件及相关专业,公务员计算机专业考试大纲和真题3
- 一文带你入门C++,类与对象、6个默认成员函数、this指针以及static关键字。