Pandas使用value_counts统计后如何筛选计数大于15的对应名称
实现方法
你可以直接用布尔索引过滤value_counts()返回的Series,再取索引就能得到符合条件的名称:
写法1(一行实现)
df['player_of_match'].value_counts()[df['player_of_match'].value_counts() > 15].index.tolist()
写法2(分步写更易读,适合新手)
# 第一步:先统计每个球员的获奖次数,得到索引为球员名、值为次数的Series match_count = df['player_of_match'].value_counts() # 第二步:用计数大于15的条件过滤,再取索引就是目标名称,转成列表更方便后续使用 target_players = match_count[match_count > 15].index.tolist()
额外说明
如果你需要同时保留符合条件的球员名称和对应的获奖次数,只需要写到过滤步骤即可,不用取索引:
# 输出为 球员名: 获奖次数 的格式,仅展示次数大于15的条目 match_count[match_count > 15]
内容的提问来源于stack exchange,提问作者Saurabh Dubey
相关产品推荐
相关产品推荐

