pandas写入excel文件(Pandas读取并修改excel的示例代码)
pandas写入excel文件
Pandas读取并修改excel的示例代码一、前言
最近总是和excel打交道,由于数据量较大,人工来修改某些数据可能会有点浪费时间,这时候就使用到了python数据处理的神器—–pandas库,话不多说,直接上pandas。
二、安装
这次使用的python版本是python2.7,安装python可以去python的官网进行下载,这里不多说了。
安装完成后使用python自带的包管理工具pip可以很快的安装pandas。
|
pip install pandas |
如果使用的是anaconda安装的python,会自带pandas。
三、read_excel()介绍
首先可以先创建一个excel文件当作实验数据,名称为example.xlsx,内容如下:
name | age | gender |
---|---|---|
john | 30 | male |
mary | 22 | female |
smith | 32 | male |
这里是很简单的几行数据,我们来用pandas实际操作一下这个excel表。
|
# coding:utf-8 import pandas as pd data = pd.read_excel( 'example.xlsx' , sheet_name = 'sheet1' ) print data |
结果如下:
这里使用了read_excel()方法来读取excel,来看一个read_excel()这个方法的api,这里只截选一部分经常使用的参数:
|
pd.read_excel(io, sheet_name = 0 , header = 0 , names = none, index_col = none, usecols = none) |
这里主要参数为io,sheet_name,header,usecols和names
- io:excel文件,如果命名为中文,在python2.7中,需要使用decode()来解码成unicode字符串,例如: pd.read_excel('示例'.decode('utf-8))
- sheet_name:返回指定的sheet,如果将sheet_name指定为none,则返回全表,如果需要返回多个表,可以将sheet_name指定为一个列表,例如['sheet1', 'sheet2']
- header:指定数据表的表头,默认值为0,即将第一行作为表头。
- usecols:读取指定的列,例如想要读取第一列和第二列数据:
|
pd.read_excel( "example.xlsx" , sheet_name = none, usecols = [ 0 , 1 ]) |
四、使用
这里先来一个在机器学习中经常使用的:将所有gender为male的值改为0,female改为1。
|
# coding:utf-8 import pandas as pd from pandas import dataframe # 读取文件 data = pd.read_excel( "example.xlsx" , sheet_name = "sheet1" ) # 找到gender这一列,再在这一列中进行比较 data[ 'gender' ][data[ 'gender' ] = = 'male' ] = 0 data[ 'gender' ][data[ 'gender' ] = = 'female' ] = 1 print data |
结果如下:
需要注意的是,这里的data为excel数据的一份拷贝,对data进行修改并不会直接影响到我们原来的excel,必须在修改后保存才能够修改excel。保存的代码如下:
|
dataframe(data).to_excel( 'example.xlsx' , sheet_name = 'sheet1' , index = false, header = true) |
这时候我们再打开example.xlsx文件看看是否更改了:
如果我们想要新增加一列或者一行数据怎么办呢?这里给出参考:
新增列数据:
|
data[ '列名称' ] = none |
新增行数据,这里行的num为excel中自动给行加的id数值
|
data.loc[行的num] = [值 1 , 值 2 , ...] |
以上面的数据为例:
|
# coding:utf-8 import pandas as pd from pandas import dataframe data = pd.read_excel( "example.xlsx" , sheet_name = 'sheet1' ) # 增加行数据,在第5行新增 data.loc[ 5 ] = [ 'james' , 32 , 'male' ] # 增加列数据,给定默认值none data[ 'profession' ] = none # 保存数据 dataframe(data).to_excel( 'example.xlsx' , sheet_name = 'sheet1' , index = false, header = true) |
打开excel看到的结果如下:
说完了增加一行或一列,那怎样删除一行或一列呢?
|
import pandas as pd from pandas import dataframe data = pd.read_excel( "example.xlsx" , sheet_name = 'sheet1' ) # 删除gender列,需要指定axis为1,当删除行时,axis为0 data = data.drop( 'gender' , axis = 1 ) # 删除第3,4行,这里下表以0开始,并且标题行不算在类 data = data.drop([ 2 , 3 ], axis = 0 ) # 保存 dataframe(data).to_excel( 'example.xlsx' , sheet_name = 'sheet1' , index = false, header = true) |
这时候打开excel可以看见gender列和除标题行的第3,4行被删除了。
总结
pandas除了上述的基本功能以外,还有其它更高级的操作,想要进一步学习的小伙伴们可以去pandas网站进行学习。
原文链接:https://blog.csdn.net/qq_34377830/article/details/81872568
- pythonexcel报表实例(对python生成业务报表的实例详解)
- 如何用python处理excel表格(零基础使用Python读写处理Excel表格的方法)
- python excel 合并表格(Python实现合并excel表格的方法分析)
- python读取和写入数据excel(Python向excel中写入数据的方法)
- vue原样表格导出excel(Vue导出Excel功能的全过程记录)
- php导出excel使用方法(PHP使用ajax的post方式下载excel文件简单示例)
- python调用excel教程(利用python在excel里面直接使用sql函数的方法)
- webapp前端能用yii2开发吗(Yii Framework框架使用PHPExcel组件的方法示例)
- python处理excel基础教程第3讲(Python Excel处理库openpyxl使用详解)
- python解析excel例子(Python玩转Excel的读写改实例)
- php自定义函数返回多少个值(PHP7导出Excel报ERR_EMPTY_RESPONSE解决方法)
- pandas写入excel文件(Pandas读取并修改excel的示例代码)
- vue导出动态的excel功能(vue中如何下载excel流文件及设置下载文件名)
- asp.net将Excel文档转换成pdf
- vue如何导入excel(Vue实现导入Excel功能步骤详解)
- javapoi简单代码(Java使用Apache.POI中HSSFWorkbook导出到Excel的实现方法)
- 刚红就耍大牌,《琉璃》角色滤镜碎一地,心疼工作人员(琉璃角色滤镜碎一地)
- 袁冰妍郑业成这对可以处,有脸红情话他们是真的敢说(袁冰妍郑业成这对可以处)
- 《祝卿好》台词又土又甜,就喜欢这么直接的恋爱(祝卿好台词又土又甜)
- 大女主 汤唯垂青电视圈,搭档朱亚文出演《大明皇妃孙若微传》(汤唯垂青电视圈)
- 红色代表什么(红色代表什么情感和含义)
- 高中数学题(高中数学题型总结及解题方法)
热门推荐
- extjs xtype的使用
- dedecms参数不显示(DEDECMS后台登陆空白排查错误原因)
- vue定时器中间变颜色(Vue如何优雅的清除定时器)
- mysqlinnodb数据存储格式(MySQL InnoDB ReplicaSet副本集简单介绍)
- html5 postMessage(html5关于外链嵌入页面通信问题postMessage解决跨域通信)
- cssdisplay覆盖规律(css解决display:inline-block;产生的缝隙间隙的方法)
- web前端项目的目录结构
- python中输入背景颜色的代码(Python 给屏幕打印信息加上颜色的实现方法)
- laravel框架如何查询空的信息(Laravel中validation验证 返回中文提示 全局设置的方法)
- vue创建项目同时引入elementui(Vue Element前端应用开发之开发环境的准备工作)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9