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

Python Pandas如何筛选分组后组内总和符合条件的记录 写法报错解决

问题解决方法

错误修复

你的筛选代码存在语法错误:isin是Pandas Series对象的内置方法,需要通过.调用,且方法入参需要用英文圆括号包裹,修正后的代码如下:

# 原有分组求和逻辑不变
x = df.groupby('ISSUER')['Rating'].sum()
x = x[x>6]
# 修正后的筛选代码
result = df[df['ISSUER'].isin(x.index)]

运行后会保留所有ISSUER为AH、BZ的原始记录,符合筛选要求。

更优实现方式

这类「按分组聚合条件过滤原始记录」的场景,直接用Pandas GroupBy自带的filter方法即可,无需单独存储分组聚合的中间变量,代码更简洁:

result = df.groupby('ISSUER').filter(lambda group: group['Rating'].sum() > 6)

filter方法会遍历每个分组,只保留符合lambda表达式条件的分组对应的所有原始记录,和分步写法的运行结果完全一致。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 09:27:03