这篇文章主要介绍“Python数据分析之Pandas Dataframe条件筛选遍历的方法”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python数据分析之Pandas Dataframe条件筛选遍历的方法”文章能帮助大家解决问题。
查询Pandas Dataframe数据时,经常会筛选出符合条件的数据,接下来介绍一下具体的使用方式。
示例Dataframe如下:
单条件筛选,例如查询gender为woman的数据:
df[df["gender"]=="woman"] # 或 df.loc[df["gender"]=="woman"]
使用isin()函数筛选,例如查询age为24、28的数据:
df[df["age"].isin([24,28])]
当有多个过滤条件时,可以使用逻辑操作符&
和|
,如下。
例如:查询gender为“woman”并且city为“shanghai”的数据:
df[(df["gender"]=="woman") & (df["city"]=="shanghai")]
查询age大于25或者gender为“woman”的数据:
df[(df["age"]>25) | (df["gender"]=="woman")]
注意:逻辑操作符两边的过滤条件必须使用小括号()括起来,否则会报错或者不起作用。
波浪线符~
可以取指定条件相反的数据,例如查询city不为“beijing”的数据:
df[~(df["city"]=="beijing")]
因为 Dataframe 对象属于可迭代对象,所以可以使用for...in...
语句进行遍历,遍历结果是列的名称,如下:
for i in df: print(i)
结果输出如下:
如果要遍历 DataFrame 的行数据,需要使用以下方法:
iteritems()
方法是按列进行遍历,遍历结果为为(列名, value)键值对:
for column, value in df.iteritems(): print(column) print(value)
iterrows()
方法是按行进行遍历,遍历结果为(index, value)键值对:
for index, row in df.iterrows(): print(index) print(row)
itertuples()
是以namedtuples
(命名元组)形式遍历行,遍历每一行为一个命名元组:
for row in df.itertuples(): print(row)
关于“Python数据分析之Pandas Dataframe条件筛选遍历的方法”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。