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

如何统计组合而非排列的出现次数?实现球队对阵次数合并统计

合并主客场的球队对阵次数统计方案

可以通过将每场对阵的两支球队按固定规则排序后生成统一组合,再统计次数,就能解决主客场拆分统计的问题。

实现代码

import pandas as pd

# 生成统一的球队组合(按字母顺序排序)
data['team_combination'] = data.apply(lambda row: tuple(sorted((row['home_team'], row['away_team']))), axis=1)

# 统计合并后的对阵次数
combined_counts = data['team_combination'].value_counts()

# 可选:将结果转换为更直观的表格格式
combined_counts = combined_counts.reset_index()
combined_counts.columns = ['team_pair', 'total_matches']
combined_counts[['team_a', 'team_b']] = pd.DataFrame(combined_counts['team_pair'].tolist(), index=combined_counts.index)
combined_counts = combined_counts.drop('team_pair', axis=1)

代码解释

  • 使用apply结合sorted,把每场比赛的主客场球队按字母顺序排序,生成唯一的元组组合(比如阿根廷vs乌拉圭无论主客场都会统一为('Argentina', 'Uruguay'))
  • 对这个统一组合列执行value_counts(),即可得到两支球队之间的总对阵次数
  • 最后可选的步骤是拆分组合元组为单独列,让结果更易读

内容的提问来源于stack exchange,提问作者E.Cuell

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 09:39:52