You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用pandas groupby.filter保留至少有一个值小于24的分组

错误原因

你之前的写法将Age也加入了分组键,会导致每个不同的Age值被拆分为独立分组,过滤时仅能保留Age<24的单条对应分组,自然丢失同组其他数据。

正确实现

分组键仅保留['State', 'CId', 'CCode']三个维度,过滤逻辑判断组内是否存在至少一个Age小于24即可,示例代码如下:

# 过滤保留符合条件的完整分组
filtered_df = df.groupby(['State', 'CId', 'CCode']).filter(lambda group: (group['Age'] < 24).any())

# 对过滤后的分组做聚合计算,例如计算Age的标准差
agg_result = filtered_df.groupby(['State', 'CId', 'CCode'])['Age'].std()

此时输出filtered_df就可以得到你需要的完整Nebraska分组数据,后续聚合也会基于全组数据计算。

内容的提问来源于stack exchange,提问作者bnoouhl

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 16:15:01