手把手教你用Python读取Excel

开发 后端
pandas.read_excel接口用于读取Excel格式的数据文件,由于它使用非常频繁、功能强大、参数众多,因此本文专门做详细介绍。

[[416264]]

 01 语法

pandas.read_excel接口的语法如下: 

  1. pd.read_excel(io, sheet_name=0, header=0, 
  2.               names=None, index_col=None, 
  3.               usecols=None, squeeze=False
  4.               dtype=None, engine=None, 
  5.               converters=None, true_values=None, 
  6.               false_values=None, skiprows=None, 
  7.               nrows=None, na_values=None, 
  8.               keep_default_na=True, verbose=False
  9.               parse_dates=False, date_parser=None, 
  10.               thousands=None, comment=None, skipfooter=0, 
  11.               convert_float=True, mangle_dupe_cols=True, **kwds) 

02 文件内容

io为第一个参数,没有默认值,也不能为空,根据Python的语法,第一个参数传参时可以不写。可以传入本地文件名或者远程文件的URL: 

  1. # 字符串、字节、Excel文件、xlrd.Book实例、路径对象或者类似文件的对象 
  2. # 本地相对路径 
  3. pd.read_excel('data/data.xlsx') # 注意目录层级 
  4. pd.read_excel('data.xls') # 如果文件与代码文件在同一目录下 
  5. # 本地绝对路径 
  6. pd.read_excel('/user/gairuo/data/data.xlsx'
  7. # 使用URL 
  8. pd.read_excel('https://www.gairuo.com/file/data/dataset/team.xlsx'

与read_csv一样,需要注意,Mac和Windows中的路径写法不一样。

03 表格

sheet_name可以指定Excel文件读取哪个sheet,如果不指定,默认读取第一个。 

  1. # 字符串、整型、列表、None,默认为0 
  2. pd.read_excel('tmp.xlsx', sheet_name=1) # 第二个sheet 
  3. pd.read_excel('tmp.xlsx', sheet_name='总结表') # 按sheet的名字 
  4.  
  5. # 读取第一个、第二个、名为Sheet5的sheet,返回一个df组成的字典 
  6. dfs = pd.read_excel('tmp.xlsx', sheet_name=[0, 1, "Sheet5"]) 
  7. dfs = pd.read_excel('tmp.xlsx', sheet_name=None) # 所有sheet 
  8. dfs['Sheet5'] # 读取时按sheet名 

04 表头

数据的表头参数为header,如不指定,默认为第一行。 

  1. # 整型、整型组成的列表,默认为 0 
  2. pd.read_excel('tmp.xlsx', header=None)  # 不设表头 
  3. pd.read_excel('tmp.xlsx', header=2)  # 第三行为表头 
  4. pd.read_excel('tmp.xlsx', header=[0, 1])  # 两层表头,多层索引 

05 列名

用names指定列名,也就是表头的名称,如不指定,默认为表头的名称。 

  1. # 序列,默认为None 
  2. pd.read_excel('tmp.xlsx', names=['姓名''年龄''成绩']) 
  3. pd.read_excel('tmp.xlsx', names=c_list) # 传入列表变量 
  4. # 没有表头,需要设置为None 
  5. pd.read_excel('tmp.xlsx', header=None, names=None) 

06 其他

其他参数与pandas.read_csv的同名参数功能一致,如果想使用仅pandas.read_csv有的参数,可以考虑将数据保存为CSV文件,因为CSV文件相对通用、读取数据快且处理方法比较丰富。

用Python读取CSV文件的操作详解可戳:史上最全!用Pandas读取CSV,看这篇就够了

07 小结

本文介绍了pandas.read_excel相对于pandas.read_csv专有的参数功能。由于Excel文件在日常工作中较为常用,所以需要熟练掌握Excel的数据读取功能。另外对于一些量比较小的Excel数据文件,在做数据临时处理时,可以复制并使用pd.read_clipboard()来读取,非常方便。

 

责任编辑:华轩 来源: 大数据DT
相关推荐

2021-03-23 09:05:52

PythonExcelVlookup

2022-10-19 14:30:59

2021-05-10 06:48:11

Python腾讯招聘

2021-12-11 20:20:19

Python算法线性

2021-02-02 13:31:35

Pycharm系统技巧Python

2022-04-01 20:29:26

Pandas数据存储

2011-03-28 16:14:38

jQuery

2021-02-04 09:00:57

SQLDjango原生

2021-02-06 14:55:05

大数据pandas数据分析

2022-08-04 10:39:23

Jenkins集成CD

2021-05-17 21:30:06

Python求均值中值

2009-04-22 09:17:19

LINQSQL基础

2021-01-21 09:10:29

ECharts柱状图大数据

2021-01-08 10:32:24

Charts折线图数据可视化

2012-01-11 13:40:35

移动应用云服务

2020-03-08 22:06:16

Python数据IP

2021-08-02 23:15:20

Pandas数据采集

2021-03-02 09:05:13

Python

2022-06-30 16:10:26

Python计时器装饰器

2020-05-26 10:20:56

Python开发工具
点赞
收藏

51CTO技术栈公众号