Pandas操作excel
读取excel:Pandas库read_excel()参数详解
pandas.read_excel(io,sheet_name = 0,header = 0,names = None,index_col = None,usecols = None,squeeze = False,dtype = None, ...)
io:字符串,文件的路径对象。
sheet_name:None、string、int、字符串列表或整数列表,默认为0。字符串用于工作表名称,整数用于零索引工作表位置,字符串列表或整数列表用于请求多个工作表,为None时获取所有工作表。
| 值 | 对应操作 |
|---|---|
| sheet_name=0 | 第一张作为DataFrame |
| sheet_name=1 | 第二张作为DataFrame |
| sheet_name=“Sheet1” | 第一张作DataFrame |
| sheet_name=[0,1,'Sheet5'] | 第1页,第2页和第5页作为DataFrames的字典。 |
header:指定作为列名的行,默认0,即取第一行的值为列名。数据为列名行以下的数据;若数据不含列名,则设定 header = None。
names:默认为None,要使用的列名列表,如不包含标题行,应显示传递header=None。
index_col:指定列为索引列,默认None列(0索引)用作DataFrame的行标签。
usecols:int或list,默认为None。
- 如果为None则解析所有列
- 如果为int则表示要解析的最后一列
- 如果为int列表则表示要解析的列号列表
- 如果字符串则表示以逗号分隔的Excel列字母和列范围列表(例如“A:E”或“A,C,E:F”)。范围包括双方。
squeeze:boolean,默认为False,如果解析的数据只包含一列,则返回一个Series。
dtype:列的类型名称或字典,默认为None。数据或列的数据类型。例如{'a':np.float64,'b':np.int32}使用对象保存存储在Excel中的数据而不解释dtype。如果指定了转换器,则它们将应用于dtype转换的INSTEAD。
写入excel:pandas.dataframe.to_excel()
to_excel(self, excel_writer, sheet_name='Sheet1', na_rep='', float_format=None,columns=None, header=True, index=True, index_label=None,startrow=0, startcol=0, engine=None, merge_cells=True, encoding=None,
inf_rep='inf', verbose=True, freeze_panes=None)
常用参数解析
excel_writer : ExcelWriter对象或者目标路径
sheet_name : excel表名命名
na_rep : 缺失值填充 ,可以设置为字符串
float_format : string, default None Format string for floating point numbers
columns : 选择输出的的列存入。
header : 指定作为列名的行,默认0,即取第一行,数据为列名行以下的数据;若数据不含列名,则设定 header = None;
index : 默认为True,显示index,当index=False 则不显示行索引(名字)
index_label : 设置索引列的列名
startrow :upper left cell row to dump data frame
startcol :upper left cell column to dump data frame
engine : string, default None ,write engine to use - you can also set this via the options,io.excel.xlsx.writer, io.excel.xls.writer, andio.excel.xlsm.writer.
merge_cells : boolean, default True Write MultiIndex and Hierarchical Rows as merged cells.
encoding: string, default None encoding of the resulting excel file. Only necessary for xlwt,other writers support unicode natively.
inf_rep : string, default ‘inf’ Representation for infinity (there is no native representation for infinity in Excel)
freeze_panes : tuple of integer (length 2), default None Specifies the one-based bottommost row and rightmost column that is to be frozen
工作之中一个excel内会有多个sheet。但是将两组数据先后保存到一个excel内会发现只有后一组保存的数据,因为前一组的数据被后写入的数据覆盖了。如:

这是两组数据,df1与df2,我们分别使用to_excel将这两组数据保存到同一个excel内。这里我们将sheet_name这个参数改成不同的


但是结果只有一个df2,即df1被df2这组数据覆盖了。但是能不能两组数据同时写入、保存,但是不分先后顺序。答案是可以的!
为了这一方法,我们需要使用到ExcelWriter


当然跟open文件一样,上面的5行代码也可以简写如下:
with pd.ExcelWriter(r'C:\Users\数据\Desktop\data\test2.xls') as writer:
df1.to_excel(writer, sheet_name='df1')
df2.to_excel(writer, sheet_name='df2')
简单高效,不需要再单独写save和close,自动完成。
Pandas操作excel的更多相关文章
- Python Pandas操作Excel
Python Pandas操作Excel 前情提要 ☟ 本章使用的 Python3.6 Pandas==0.25.3 项目中需要用到excel的文件字段太多 考虑到后续字段命名的变动以及中文/英文/日 ...
- Python openpyxl、pandas操作Excel方法简介与具体实例
本篇重点讲解windows系统下 Python3.5中第三方excel操作库-openpyxl: 其实Python第三方库有很多可以操作Excel,如:xlrd,xlwt,xlwings甚至注明的数据 ...
- 【Python自动化Excel】pandas操作Excel的“分分合合”
话说Excel数据表,分久必合.合久必分.Excel数据表的"分"与"合"是日常办公中常见的操作.手动操作并不困难,但数据量大了之后,重复性操作往往会令人崩溃. ...
- pandas 操作 excel
1. 多重 sheet Using Pandas to pd.read_excel() for multiple worksheets of the same workbook pd.read_exc ...
- (新手)使用pandas操作EXCEL
import pandas as pdimport numpy as npfrom pandas import DataFrame,Series#path = r'C:\Users\tsl\Deskt ...
- Python利用pandas处理Excel数据的应用
Python利用pandas处理Excel数据的应用 最近迷上了高效处理数据的pandas,其实这个是用来做数据分析的,如果你是做大数据分析和测试的,那么这个是非常的有用的!!但是其实我们平时在做 ...
- 【python基础】利用pandas处理Excel数据
参考:https://www.cnblogs.com/liulinghua90/p/9935642.html 一.安装第三方库xlrd和pandas 1:pandas依赖处理Excel的xlrd模块, ...
- 用Python的pandas框架操作Excel文件中的数据教程
用Python的pandas框架操作Excel文件中的数据教程 本文的目的,是向您展示如何使用pandas 来执行一些常见的Excel任务.有些例子比较琐碎,但我觉得展示这些简单的东西与那些你可以在其 ...
- pandas神器操作excel表格大全(数据分析数据预处理)
使用pandas库操作excel,csv表格操作大全 关注公众号"轻松学编程"了解更多,文末有公众号二维码,可以扫码关注哦. 前言 准备三份csv表格做演示: 成绩表.csv su ...
随机推荐
- 使用jqPrint.js调用浏览器打印界面,打印网页中的某一部分该部分含有ECharts图表
1.准备好js文件(我用的是谷歌浏览器) 这个文件是为了防止你的jQuery版本过高而不适配的问题 这是调用浏览器打印的js插件 2.引入js文件 <script src="js/jq ...
- js中this由来
这篇文章主要是讲述js中的this是什么?是怎么来的? 我们首先创建一个person对象,如下: var person = { name: 'wyh', age: 22, sayHi: functio ...
- Jenkins 打tag回滚
利用jenkins,从gitlab上拉取代码,然后发布,如果想进行代码回退,其实还是代码发布,拉取的时候,选择合适的标签. 一.利用Git parameter插件选择branch或tag.下面的文本参 ...
- Asp.Net六大内置对象
前面学习mvc管道处理模型的时候,我们晓的HttpContext是贯穿全文的一个对象,在HttpRuntime产生,现在我们所谓的Asp.Net六大内置对象,其实就是HttpContext的属性.具体 ...
- Linux 用libevent实现的简单http服务器
Linux 用libevent实现的简单http服务器 main.c #include <stdio.h> #include <sys/types.h> #include &l ...
- 11、shell_sed
正则表达式:正则表达式,就是用一种模式,去匹配一类字符串的公式. 正则表达式的解释是用正则表达式引擎来实现的,常用正则表达式引擎有两类: 基本正则.扩展正则. 正则表达式基础: 正则表达式是由一些 ...
- mysql字段约束-索引-外键---3
本节所讲内容: 字段修饰符 清空表记录 索引 外键 视图 一:字段修饰符 (约束) 1:null和not null修饰符 我们通过这个例子来看看 mysql> create table wo ...
- 神兽、佛祖保佑,代码全程无bug
''' ━━━━━━神兽出没━━━━━━ ┏┓ ┏┓ ┏┛┻━━━━━┛┻┓ ┃ ┃ ┃ ━ ┃ ┃ ┳┛ ┗┳ ┃ ┃ ┃ ┃ ┻ ┃ ┃ ┃ ┗━┓ ┏━┛ Code is far away fr ...
- python27期day02:while循环、break、格式化、运算符、编码初始、作业题。
1.while循环:不断的重复着某件事就是循环 2.while循环图解: 3.break:终止当前循环. 4.continue就是跳出本次循环.继续下次循环. 下方代码都不会执行. 改变循环条件来终止 ...
- Nginx的负载均衡配置(七)
原文链接:https://www.cnblogs.com/knowledgesea/p/5199046.html 首先给大家说下upstream这个配置的,这个配置是写一组被代理的服务器地址,然后配置 ...