Python之dataframe按照某一列分组并排序,同时加上排名

Python之dataframe按照某一列分组并排序,同时加上排名 

Python之dataframe按照某一列分组并排序,同时加上排名 

import pandas as pd
data = {'year':['2018','2019','2018','2018','2019','2019','2018','2019'],
       '数学':[83,90,98,90,88,88,88,89],
       '英语':[92,89,90,78,83,90,91,95]}
df = pd.DataFrame(data)
df

# df = df['数学'].rank()
df['排名'] = df.groupby('year',axis=0)['数学'].rank(ascending=False)
df