专栏首页acoolgiser_zhuanlanpython pandas read_excel 参数详解 to_excel 读写Excel

python pandas read_excel 参数详解 to_excel 读写Excel

Python 读写 Excel 可以使用 Pandas,处理很方便。但如果要处理 Excel 的格式,还是需要 openpyxl 模块,旧的 xlrd 和 xlwt 模块可能支持不够丰富。Pandas 读写 Excel 主要用到两个函数,下面分析一下 pandas.read_excel() 和 DataFrame.to_excel() 的参数,以便日后使用。

1. pandas.read_excel

pandas.read_excel(io,sheet_name=0,header=0,names=None,index_col=None,usecols=None,squeeze=False,dtype=None,engine=None,converters=None,true_values=None,false_values=None,skiprows=None,nrows=None,na_values=None,keep_default_na=True,verbose=False,parse_dates=False,date_parser=None,thousands=None,comment=None,skip_footer=0,skipfooter=0,convert_float=True,mangle_dupe_cols=True,**kwds)

常用参数:

  • io:文件路径 io = r’C:\Users\ss\Desktop\ppp.xlsx’
  • sheetname:表名,单表、多表、全部表 sheetname = None # 读取全部表,得到 OrderDict:key为表名,value为 DataFrame sheetname = 1 / “Sheet1” # 读取单个表,返回 DataFrame sheetname = [0, 1] / [“Sheet1”, “Sheet2”] # 读取多表,返回一个OrderDict
  • header:指定列名行
  • names:设置列名,必须是list类型,且长度和列数一致 names = [“Name”, “Number”, “Score”]
  • usecols:使用的行 usecols = range(1, 3) # 使用 [1, 3) 行,不包括第 3 行 usecols = [4, 7] # 使用 4和7 行
  • skiprows:指定跳过的行数(不读取的行数) shiprows = 4 # 跳过前 4 行,会把首行列名也跳过 skiprows = [1, 2, 4] # 跳过 1,2,4 行 skiprows = range(1, 10) # 跳过 [1,10) 行,不包括第10行,可以留下首行列名
  • skipfooter:指定省略尾部的行数,必须为整数 skipfooter = 4 # 跳过尾部 4 行
  • index_col:指定列为索引列,索引从 0 开始 index_col = 1 index_col = “名称”
# 读取多个表
import pandas as pd
order_dict = pd.read_excel(r'C:\Users\sss\Desktop\test.xlsx',header=0, usecols=[2, 3] names=["Name", "Number"], sheet_name=["Sheet1", "Sheet2"], skiprows=range(1, 10), skipfooter=4)
for sheet_name, df in order_dict.items():
    print(sheet_name)
    print(df)

2. DataFrame.to_excel

DataFrame.to_excel(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:文件路径,不存在会自动生成
  • sheet_name=“Sheet1”:指定写的表
  • columns=None:指定输出某些列 columns = [“Name”, “Number”]
  • header=True:是否保存头行列名
  • index=True:是否保存索引列
  • startcol=0:起始行
  • merge_cells=True:是否合并单元格
  • encoding=None:指定编码,常用 utf-8
  • float_format=None:浮点数保存的格式,默认保存为字符串 float_format=’%.2f’ # 保存为浮点数,保留2位小数
  • engine=None:保存格式,指定io.excel.xlsx.writer、 io.excel.xls.writerio.excel.xlsm.writer.
# 简单示例
df.to_excel(r'C:\Users\sss\Desktop\test.xlsx', columns=["Name", "Number"], encoding="utf8")

3. 官方API

https://pandas.pydata.org/pandas-docs/version/0.22/generated/pandas.read_excel.html#pandas.read_excel

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • python读写excel的一些技巧

    python处理excel的库很多,例如xlrd/xlwt/openpyxl/xlsxwriter等。每个库都有一定的局限性,pandas处理excel是基于这...

    赵云龙龙
  • Python-科学计算-pandas-15-df输出Excel和解析Excel

    系统:Windows 7 语言版本:Anaconda3-4.3.0.1-Windows-x86_64 编辑器:pycharm-community-2016.3....

    zishendianxia
  • Python+pandas分离Excel数据到同一个Excel文件中多个Worksheets

    现在要求把每个员工的交易数据写入文件“各员工数据.xlsx”,每个员工的数据占一个worksheet,结构和“超市营业额2.xlsx”一样,并以员工姓名作为wo...

    Python小屋屋主
  • 使用pandas进行文件读写

    pandas是数据分析的利器,既然是处理数据,首先要做的当然是从文件中将数据读取进来。pandas支持读取非常多类型的文件,示意如下

    生信修炼手册
  • Python 合并 Excel 表格

    之前曾尝试用 Python 写过整理 Excel 表格的代码,记录在《Python 自动整理 Excel 表格》中。当时也是自己初试 pandas,代码中用到的...

    数据森麟
  • Pandas之EXCEL数据读取/保存/文件分割/文件合并

    excel的写入函数为pd.DataFrame.to_excel();必须是DataFrame写入excel, 即Write DataFrame to an e...

    周小董
  • 数据清洗之 Excel文件读写

    若尘_
  • 想成为高效数据科学家?不会Pandas怎么行

    Python 是开源的,它很棒,但是也无法避免开源的一些固有问题:很多包都在做(或者在尝试做)同样的事情。如果你是 Python 新手,那么你很难知道某个特定任...

    CDA数据分析师
  • Pandas的Apply函数具体使用

    Pandas是Python语言中非常好用的一种数据结构包,包含了许多有用的数据操作方法。而且很多算法相关的库函数的输入数据结构都要求是pandas数据,或者有该...

    砸漏

扫码关注云+社区

领取腾讯云代金券