当使用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"):

 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)

结果如下:

   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参数相关推荐

  1. python中类方法与实例方法的区别-Python中的对象,方法,类,实例,函数用法分析...

    本文实例分析了Python中的对象,方法,类,实例,函数用法.分享给大家供大家参考.具体分析如下: Python是一个完全面向对象的语言.不仅实例是对象,类,函数,方法也都是对象. class Foo ...

  2. java分布式对象——远程方法中的参数和返回值+远程对象激活

    [0]README 1)本文文字描述转自 core java volume 2, 旨在学习 java分布式对象--远程方法中的参数和返回值+远程对象激活 的相关知识: [1]远程方法中的参数和返回值 ...

  3. java中的request对象_java中request对象各种方法的使用实例分析

    本文实例讲述了java中request对象各种方法的使用.分享给大家供大家参考,具体如下: request对象是从客户端向服务器端发出请求,包括用户提交的信息以及客户端的一些信息.request对象是 ...

  4. 已解决pandas创建DataFrame对象失败

    已解决(pandas创建DataFrame对象失败)ValueError: Shape of passed values is (1509, 1), indices imply (1509, 2) 文 ...

  5. 用python绘制熊猫图案_使用pandas的DataFrame的plot方法绘制图像的实例

    使用了pandas的Series方法绘制图像体验之后感觉直接用matplotlib的功能好用了不少,又试用了DataFrame的方法之后发现这个更加人性化. 写代码如下: from pandas im ...

  6. js中match、replace方法中使用正则表达式

    为什么80%的码农都做不了架构师?>>>    js中match.replace方法中使用正则表达式 (2012-06-29 14:23:37) 转载▼ 标签: 字符串 飞雪 正则表 ...

  7. Python Pandas的DataFrame对象中轴的意义,axis=0 或者axis=1代表什么意思?

    Python Pandas的DataFrame对象中轴的意义,axis=0 或者axis=1代表什么意义? 通常来说:axis = 0代表行, axis=1代表列. 一.从删除操作来看axis: 举个 ...

  8. 解决vue中无法取得methods方法中的return值

    解决vue中无法取得methods方法中的return值 参考文章: (1)解决vue中无法取得methods方法中的return值 (2)https://www.cnblogs.com/betty- ...

  9. 【C++】栈中实例化对象与堆中实例化对象

    一. 实例化对象写法的区别 栈中实例化对象: 堆中实例化对象: 最大区别就在于,从栈中申请内存,在使用完后无需释放,但是从堆中申请内存,使用完以后必须释放! 注意:从堆中申请内存,是有可能失败的,所以 ...

最新文章

  1. php图片保存在mysql_php实现上传图片保存到数据库的方法
  2. 211.Alpha多样性箱线图(样章,11图2视频)
  3. jmeter发送json数据,报405、400错误解决方案
  4. python 四种逐行读取文件内容的方法
  5. # 删除注册表项键值_强制删除:让你的电脑上不再有“顽固”程序
  6. airpods删除别人的配对_怎么不让别人连我的airpods
  7. [转]如何处理机器学习中的不平衡类别
  8. 解决Github加载ipynb文件缓慢/失败
  9. int在c语言中的作用,C语言中int,Uint,uint16等有什么区别以及用处
  10. x264码率控制介绍、配置及应用
  11. (八:2020.08.27)CVPR 2020 追踪之论文纲要(译)
  12. 威廉玛丽学院计算机专业好吗,威廉玛丽学院计算机
  13. 为程序员提供一杯免费咖啡
  14. 5G网络优化工程师是做什么的?4大工作职责!
  15. 云办公系统 skyeye v3.7.16 部分企业版开源
  16. 快速获取一个网站的所有资源,图片,html,css,js......扒站,仿站必备工具
  17. 【区块链 | Compound】1.剖析DeFi借贷产品之Compound:概述篇
  18. java编译找不到文件_java报错找不到文件解决方法
  19. HDU 1718 Rank counting sort解法
  20. python 爬取某音乐各排行榜【简易版本】

热门文章

  1. 两张照片重叠处半透明_那些悬浮在空中的照片是怎么拍的?
  2. (01)System Verilog验证理论
  3. (26)FPGA面试技能提升篇(DDC、DUC、QMC)
  4. (6)FPGA面试技能提升篇(OpenCV)
  5. java中类定义修饰符_Java 中类和方法修饰符
  6. python高手之路(第3版)_Python高手之路(第3版)
  7. python数据结构和算法讲解_【学习】python数据结构和算法
  8. 今日头条电脑版官方版_雷霆拯救电脑版-雷霆拯救pc版下载v4.0.9 官方版
  9. 公务员计算机软件及相关专业,公务员计算机专业考试大纲和真题3
  10. 一文带你入门C++,类与对象、6个默认成员函数、this指针以及static关键字。