Python 根据每组的平均得分进行排名
我有一个数据帧:Python 根据每组的平均得分进行排名,python,pandas,numpy,Python,Pandas,Numpy,我有一个数据帧: Group Score 1 3 1 2 2 3 2 1 3 0 3 1 4 1 4 1 我想取每个组的平均分数,并根据平均分数按降序排列所有组 我最初的思考过程是在“分组”列上进行分组,并找到分数列的平均值,但我不确定接下来的步骤是什么,然后尝试获得平均值: df: Group Score Rank 0 1
Group Score
1 3
1 2
2 3
2 1
3 0
3 1
4 1
4 1
我想取每个组的平均分数,并根据平均分数按降序排列所有组
我最初的思考过程是在“分组”列上进行分组,并找到分数列的平均值,但我不确定接下来的步骤是什么,然后尝试获得平均值:
df
:
Group Score Rank
0 1 3 1
1 1 2 1
2 2 3 2
3 2 1 2
4 3 0 4
5 3 1 4
6 4 1 3
7 4 1 3
df.groupby('Group')['Score'].mean().rank()
?具有相同平均值的组是否应该具有相同的排名?您还想获得每组的平均分数,还是希望框架保持不变,并向当前框架添加一个新的排名列?@HenryEcker具有相同平均值的组将具有相同的排名。每组的平均得分。并且应为当前帧创建一个新列。
Group Score Rank
0 1 3 1
1 1 2 1
2 2 3 2
3 2 1 2
4 3 0 4
5 3 1 4
6 4 1 3
7 4 1 3