如何在 pandas 中使用过滤条件和 groupby

Posted

技术标签:

【中文标题】如何在 pandas 中使用过滤条件和 groupby【英文标题】:How to use filter condition along with groupby in pandas 【发布时间】:2022-01-17 22:40:20 【问题描述】:

我正在尝试使用多列过滤数据集,并使用 groupby 过滤列中的特定值。我可以使用 groupby 进行过滤,但无法应用过滤器

我尝试过使用下面的代码

df.groupby(['city','season','toss_winner','toss_decision'])['winner'].size()

实际结果:给我所有城市的详细信息(即开普敦、百夫长和昌迪加尔)

预期结果:我只想要城市等于“开普敦”的城市详细信息

请查看附件截图

【问题讨论】:

【参考方案1】:

先过滤 city=CapeTown,再按 groupby:

out = (df.query("city =='Cape Town'")
         .groupby(['city','season','toss_winner','toss_decision'])['winner'].size())

【讨论】:

以上是关于如何在 pandas 中使用过滤条件和 groupby的主要内容,如果未能解决你的问题,请参考以下文章

使用 group by 和 like 语句时如何让 SQL 使用 where 条件

在 Pandas 中使用条件列表过滤 DataFrame

在 Pandas 中过滤分组的 DataFrame

如何使用 python 或 pandas 根据包含字典列表的列过滤 DataFrame?

pandas使用组合条件筛选过滤数据行

火花数据集过滤器列,条件如pandas