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

如何基于多条件筛选DataFrame中满足attack指标要求的name对应全量行

实现方法

思路

  • 先筛选出skill为attack的行,从中提取同时满足score>50、percentage>50的球员姓名,去重后得到符合要求的名单
  • 用该名单过滤原DataFrame,保留对应球员的所有行即可

代码示例

import pandas as pd

# 你实际使用时可以直接替换成你自己的DataFrame变量
data = [
    ['messi','attack',160,80],
    ['messi','fitness',10,5],
    ['messi','pass',30,15],
    ['neymar','attack',48,60],
    ['neymar','fitness',20,25],
    ['neymar','pass',12,15],
    ['ronaldo','attack',60,60],
    ['ronaldo','fitness',30,30],
    ['ronaldo','pass',10,10],
    ['casilas','attack',10,25],
    ['casilas','fitness',20,50],
    ['casilas','pass',10,25],
    ['owen','attack',20,20],
    ['owen','fitness',70,70],
    ['owen','pass',10,10]
]
df = pd.DataFrame(data, columns=['name','skill','score','percentage'])

# 核心筛选逻辑
qualified_names = df[(df['skill'] == 'attack') & (df['score'] > 50) & (df['percentage'] > 50)]['name'].unique()
result = df[df['name'].isin(qualified_names)]

# 输出验证
print(result)

运行代码得到的result变量就是你需要的预期输出结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 12:54:03