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

如何对DataFrame中重复运动员的奖牌数求和合并?

按运动员汇总奖牌总数的正确方法

你用df.groupby('Athlete').first().reset_index()没达到预期,核心原因是first()只会提取每组的第一行数据,不会对奖牌数值做求和计算。要实现按运动员统计金、铜、银牌的总数,需要把聚合函数换成sum(),它会对每组内的奖牌数值列自动求和。

示例代码

先构造你的示例数据集:

import pandas as pd

data = {
    'Athlete': ['Tim', 'Tim', 'Joe'],
    'Gold': [1, 0, 1],
    'Bronze': [0, 0, 0],
    'Silver': [0, 1, 0]
}
df = pd.DataFrame(data)

执行正确的聚合逻辑:

medal_totals = df.groupby('Athlete').sum().reset_index()

运行结果

Athlete  Gold  Bronze  Silver
0     Joe     1       0       0
1     Tim     1       0       1

这样就能得到每个运动员的各奖牌总数,既避免了重复行,又完成了数值求和。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 06:35:30