I’m dealing with pandas dataframe and have a frame like this:
Year Value 2012 10 2013 20 2013 25 2014 30
I want to make an equialent to DENSE_RANK () over (order by year) function. to make an additional column like this:
Year Value Rank 2012 10 1 2013 20 2 2013 25 2 2014 30 3
How can it be done in pandas?
Thanks!
Advertisement
Answer
Use pd.Series.rank
with method='dense'
df['Rank'] = df.Year.rank(method='dense').astype(int) df