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...语句
因为 Dataframe 对象属于可迭代对象,所以可以使用for...in...语句进行遍历,遍历结果是列的名称,如下:
for i in df:
print(i)结果输出如下:

如果要遍历 DataFrame 的行数据,需要使用以下方法:
iteritems()方法
iteritems()方法是按列进行遍历,遍历结果为为(列名, value)键值对:
for column, value in df.iteritems():
print(column)
print(value)
iterrows()方法
iterrows()方法是按行进行遍历,遍历结果为(index, value)键值对:
for index, row in df.iterrows():
print(index)
print(row)
itertuples()方法
itertuples()是以namedtuples(命名元组)形式遍历行,遍历每一行为一个命名元组:
for row in df.itertuples():
print(row)
到此这篇关于Python数据分析之 Pandas Dataframe条件筛选遍历详情的文章就介绍到这了,更多相关 Pandas Dataframe遍历内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
多版本python的pip 升级后, pip2 pip3 与python版本失配解决方法
在本篇文章里小编给大家整理的是关于多版本python的pip 升级后, pip2 pip3 与python版本失配的解决方法内容,需要的朋友们学习下。2019-09-09
Requests什么的通通爬不了的Python超强反爬虫方案!
今天带大家学习Requests什么的通通爬不了的Python超强反爬虫方案,文中有非常详细的图文介绍及代码示例,对正在学习python的小伙伴们有很好的帮助,需要的朋友可以参考下2021-05-05
python 解决flask 图片在线浏览或者直接下载的问题
今天小编就为大家分享一篇python 解决flask 图片在线浏览或者直接下载的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-01-01


最新评论