【发布时间】:2023-01-30 23:35:58
【问题描述】:
我有一个数据框:
df = pd.DataFrame([['Jim', 93, 87, 66], ['Bob', 88, 90, 65], ['Joe', 72, 100, 70]], columns=['Name', 'Exam_1', 'Exam_2', 'Exam_3'])
我想创建一个数据框,使每个主题根据他们在Exam_1, Exam_2, Exam_3 上的得分获得 3 分的排名。
这是所需的输出:
df_ranked
Name Exam_1 Exam_2 Exam_3
Jim 1 3 2
Bob 2 1 3
Joe 3 2 1
我相信这可以通过按每一列“升序”对数据框进行排序,重置索引,然后创建索引值列来完成。
是否有可能以另一种方式解决这个问题?
【问题讨论】: