DataFrame行列表查询操作详解+代码实战

简介: DataFrame行列表查询操作详解+代码实战

前言


文章接上章:一文速学-数据分析之Pandas数据结构和基本操作代码


上文详细介绍了Series和DataFrame作为两种Pandas基本数据结构中的创建、转换和操作。由于数据处理和分析基本都是用DataFrame实现多表操作,故关于DataFrame的操作也十分的多,不如单独拿出一篇来讲。


这里我准备了三个csv表格进行演示,这样更容易理解操作后表现的效果。分别是user_info、visit_info、result三张表格。

5b36dd566f8d44919eaa162b75fec9d0.png



cdee7a10aee44fa28a70ed9f6420df5b.png

931ba952c09943a4a4b51de915c6dd22.png


在上篇文章提过的操作本文中不会再提好节省大家的空闲时间。初学者可将DataFrame看作是SQL中表格,操作也类似。


一、选择


(1)单行、列查询


选择一列可以选定列名打出就行:


223d6e489686455fb9689b9b6ed2b545.png

cfe703390cff4d109ab8fc3539152121.png

查询多列可以在后面接上列表进行索引:


6c93b9a5ade54b41b10abc83ce6624d2.png

选取按顺序一列行在后面加上切分即可:

d72694f0c19d47cc9961f13743bb0332.png


(2)行列组合查询


面对简单的查询重组操作掌握这些方法就可,若是要做精确到行与列的选取需要掌握loc、iloc这两种操作函数就可进行自由选取:


data.loc[#具体标签选取行,#具体标签选取列]#loc只能通过index和columns来取,不能用数字


data.iloc[#初始行:#结束行,#初始列:#结束列]#iloc只能用数字索引,不能用索引名


data.ix[#初始行:#结束行(#具体标签选取行),#初始列:#结束列(#具体标签选取列)]#ix可以用数字索引,也可以用index和column索引(pandas1.0以后已经移除)


比如我想选取前五个行的数据,仅前三列

4d2b0bd90ed54ee288a5a2a50e7e2f5d.png


(3)按条件查询


可以理解和SQL查询一样,在查询中嵌套if查询条件就可筛选数据。例如我想要在广州且月龄超过24个月的用户:


df[(df['city_num']=='广州')&(df['age_month']>24)]

b8df9fe32645407d945a683f7b6961d1.png


去除月龄为0的用户:

85f41e040fca4f958accdfa27a85dcb1.png


另外想要调整查询显示可以利用set_option:


pd.set_option('display.max_rows', 5)#最大显示行数:5
pd.set_option('display.max_columns', 5)#最大显示列数:5
pd.set_option('max_colwidth', 20)#显示列中单独元素的最大长度:20
pd.set_option('precision',2)#显示小数点后的位数:2
df[df['age_month']!=0]

ed520e0b30ff41639f43f504fec5dc77.png


set_option可能会在在接下来几章详细解释和效果复现。

下一章为DataFrame的合并删除操作。


目录
相关文章
|
Web App开发 Python
直接保存“DataFrame表格”到本地,这个“骚操作”90%以上的人不知道!
直接保存“DataFrame表格”到本地,这个“骚操作”90%以上的人不知道!
直接保存“DataFrame表格”到本地,这个“骚操作”90%以上的人不知道!
|
7月前
|
Python
dataframe操作查询
Pandas提供了多种查询方法,以下是一些常见的方法: 使用df.loc方法,根据行、列的标签值查询。 使用df.iloc方法,根据行、列的数字位置查询。 使用df.where方法,根据条件过滤数据。 使用df.query方法,根据字符串表达式查询数据。
455 0
|
9月前
|
数据处理 数据库 Python
Pandas高级应用:数据透视表和字符串操作
Pandas是Python中用于数据处理和分析的强大库。这篇文章将深入探讨Pandas库的高级功能:数据透视表和字符串操作。
|
10月前
|
数据库
【解决方案 二十五】如何对Excel表数据进行彻底转置
【解决方案 二十五】如何对Excel表数据进行彻底转置
49 0
|
索引
十五、避免在索引列上使用内置函数
十五、避免在索引列上使用内置函数
61 0
|
数据挖掘 索引 Python
【Python数据分析 - 9】:DataFrame结构中自定义行列索引(Pandas篇)
【Python数据分析 - 9】:DataFrame结构中自定义行列索引(Pandas篇)
444 0
【Python数据分析 - 9】:DataFrame结构中自定义行列索引(Pandas篇)
|
数据挖掘 索引 Python
Python数据分析与展示:DataFrame类型索引操作-10
Python数据分析与展示:DataFrame类型索引操作-10
162 0
Python数据分析与展示:DataFrame类型索引操作-10
|
索引 Python
Pandas 设置索引列并获取某些行的内容
Pandas 设置索引列并获取某些行的内容
124 0
|
Python
将Excel多表中指定的数据使用Python进行合并成一个表格
将Excel多表中指定的数据使用Python进行合并成一个表格
362 0
将Excel多表中指定的数据使用Python进行合并成一个表格
|
数据挖掘 开发者 索引
DataFrame 索引设置|学习笔记
快速学习 DataFrame 索引设置
726 0