您当前的位置:首页 > 电脑百科 > 程序开发 > 语言 > Python

使用Python Pandas模块操作Excel数据

时间:2019-09-06 09:59:38  来源:  作者:

如何示例 Excel 数据

我们以Python Pandas数据加载类型表格为例,演示Python Pandas Excel操作。

使用Python Pandas模块操作Excel数据

 


本文将使用Pandas中 read_excel 函数来读取 Excel 文件,并存储成DataFrame格式,本文将介绍如何使用 iloc 、loc 方法获取 DataFrame中对应的数据,实现Execl数据的获取。

read_excel的主要参数

  • io: excel文档路径。
  • sheetname : 读取的excel指定的sheet页,若多个则为列表。
  • header :设置读取的excel第一行是否作为列名称。
  • skiprows:省略指定行数的数据。
  • skip_footer:省略从尾部数的int行数据。
  • index_col:设置读取的excel第一列是否作为行名称。
  • names:设置每列的名称,数组形式参数。
  • usecols:读取指定的列, 也可以通过名字或索引值。

读取Excel文件

根据上述参数介绍,我们通过指定表单名和指定列的方式来读取文件

使用Python Pandas模块操作Excel数据

 

如下,我们可以看到读取的Excel数据类型为DataFrame类型

使用Python Pandas模块操作Excel数据

 


使用 iloc 从DataFrame中筛选数据

iloc 语法

 data.iloc[<row selection>, <column selection>]

iloc 在Pandas中是用来通过数字来选择数据中具体的某些行和列。可以设想每一行都有一个对应的下标(0,1,2,...),通过 iloc 我们可以利用这些下标去选择对应的行数据。同理,对于行也一样,通过这些下标也可以选择对应的列数据。

需要注意的是0表示第一行,但不包含表头。


选择单行或单列

选择数据中的第一行。

使用Python Pandas模块操作Excel数据

 


选择数据中的最后一行。

使用Python Pandas模块操作Excel数据

 


选择数据中的第一列。

使用Python Pandas模块操作Excel数据

 


选择数据中的最后一列。

使用Python Pandas模块操作Excel数据

 


行列混合选择

选择数据中的第 1-3 行的所有列。

使用Python Pandas模块操作Excel数据

 


选择数据中的前2列的所有行。

使用Python Pandas模块操作Excel数据

 


选择第 0, 2, 4行 和 第 1,3 列。

使用Python Pandas模块操作Excel数据

 


选择第0 到 第3行 的 第0 到第2列。

使用Python Pandas模块操作Excel数据

 

使用 iloc 仅选择了单独的一行或一列,返回的数据为 Series 类型。若选择了多行数据则会返回 DataFrame 类型,若只选择了一行,但需要要返回 DataFrame 类型,可以传入一个单值列表,如[1],如下:

使用Python Pandas模块操作Excel数据

 


使用 loc 从DataFrame中筛选数据

 data.loc[<row selection>, <column selection>]

ioc 用于以下两种场景:

  • 使用 下标 查找
  • 使用 条件 查找

使用 下标 查找

选择数据中的第一行。

使用Python Pandas模块操作Excel数据

 


选择数据中的前二行。

使用Python Pandas模块操作Excel数据

 


选择第1到3行的 READER、WRITER列。

使用Python Pandas模块操作Excel数据

 


选择第1、2行的 DATA DESCRIPTION 到 WRITER列。

使用Python Pandas模块操作Excel数据

 

需要注意 excel.loc[[1]] 不等价于 excel.iloc[[1]] ,前者是选择索引为1的行,而后者是选择第1行,DataFrame的索引可以是数字或者是字符串。


使用逻辑判断选择数据

选择WRITER列等于to_json的 DATA DESCRIPTION列到 WRITER列。

使用Python Pandas模块操作Excel数据

 

同样,如果只选择了某一列,返回的数据是 Series 类型,若只选择了一行,但需要要返回 DataFrame 类型,可以传入一个单值列表,如[1]。


选择 READER的值中是以 "read" 开头的行的所有列。

使用Python Pandas模块操作Excel数据

 


选择"WRITER" 等于['to_csv', 'to_json']值的行。

使用Python Pandas模块操作Excel数据

 


选择READER = 'read_csv' 并且 READER 是以 "read"开头的行。

使用Python Pandas模块操作Excel数据

 

利用Apply的lambda函数判断符合条件的行,如下选择READER由“_”链接的行的所有列。

使用Python Pandas模块操作Excel数据

 

利用apply的lambda函数判断符合条件的行的'DATA DESCRIPTION', 'READER' 列。

使用Python Pandas模块操作Excel数据

 


Pandas中 apply、 applymap、 map 的区别

  • map仅是Series中的函数 ,map将函数应用于Series中的每一个元素。
  • apply和applymap是仅是DataFrame 中的函数。
  • apply 将函数作用于DataFrame中的每一个行或者列。
  • applymap将函数作用于DataFrame中的每一个元素。


Tags:Python Pandas   点击:()  评论:()
声明:本站部分内容来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除,谢谢。
▌相关评论
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
▌相关推荐
Pandas最初被作为金融数据分析工具而开发出来,因此,pandas为时间序列分析提供了很好的支持。Pandas的名称来自于面板数据(panel data)和python数据分析(data analysis)。panel dat...【详细内容】
2019-09-11   Python Pandas  点击:(35)  评论:(0)  加入收藏
我们以Python Pandas数据加载类型表格为例,演示Python Pandas Excel操作。...【详细内容】
2019-09-06   Python Pandas  点击:(45)  评论:(0)  加入收藏
本次分享将介绍如何在Python中使用Pandas库实现MySQL数据库的读写。首先我们需要了解点ORM方面的知识。ORM技术对象关系映射技术,即ORM(Object-Relational Mapping)技术,指的是...【详细内容】
2019-07-29   Python Pandas  点击:(97)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条