0


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


前言

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

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


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

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

一、选择

(1)单行、列查询

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

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

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

(2)行列组合查询

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

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

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

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

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

(3)按条件查询

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

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

去除月龄为0的用户:

另外想要调整查询显示可以利用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]

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

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


本文转载自: https://blog.csdn.net/master_hunter/article/details/124067375
版权归原作者 fanstuck 所有, 如有侵权,请联系我们删除。

“DataFrame行列表查询操作详解+代码实战”的评论:

还没有评论