如何对Pandas DataFrame同名称行数值求和并按结果降序排列
实现DataFrame按队伍分组求和并排序的方案
你需要先对队伍列执行分组聚合求和操作,再对求和结果按数值列降序排序即可,核心实现代码如下:
import pandas as pd # 请替换df、队伍列名、数值列名为你实际使用的变量名和列名 result = df.groupby('队伍名称', as_index=False)['积分'].sum()\ .sort_values(by='积分', ascending=False)\ .reset_index(drop=True) # 若只需输出前N条结果,补充下行代码即可,N替换为你要的数量,比如前3条就填3 # result = result.head(N)
参数说明
groupby的as_index=False参数:避免分组后的队伍名称成为索引,保持普通列的输出格式sort_values的ascending=False参数:指定按积分从高到低降序排列reset_index(drop=True):重置行索引为从0开始的连续序号,匹配你需要的输出格式
内容的提问来源于stack exchange,提问作者AndroidDev
相关产品推荐
相关产品推荐

