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

如何按行统计DataFrame多列中指定元素的出现次数?

统计跨多列指定标签的出现次数

针对你的需求,推荐直接在原DataFrame上对目标标签列进行统计,既高效又能保留所有原始数据,完美规避你提到的第二个方案的问题。

具体实现步骤(以Pandas为例)

  1. 先定位所有标签列:
tag_cols = ['tag_0', 'tag_1', 'tag_2', 'tag_3', 'tag_4', 'tag_5']
  1. 筛选出球员100的所有记录,统计标签101的总出现次数:
# 筛选目标球员数据
player_100_data = df[df['player_id'] == 100]
# 先逐列统计101的数量,再求和得到总数
total_goals = (player_100_data[tag_cols] == 101).sum().sum()

方法优势

  • 无需重塑数据,不会增加行数,处理50万+观测值的大数据量也能保持高效,内存占用低
  • 保留所有原始列信息,后续可以直接基于原数据做其他复杂统计(比如同时统计其他标签的出现次数)
  • 代码简洁,逻辑清晰,比你提到的第一个方案更直观

扩展:统计所有球员的进球次数

如果需要批量统计所有球员的进球次数,用分组聚合即可:

player_goal_stats = df.groupby('player_id')[tag_cols].apply(
    lambda group: (group == 101).sum().sum()
).reset_index(name='goal_count')

内容的提问来源于stack exchange,提问作者Santiago Fernndez del Castillo

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 17:05:30