Python数据帧排名系列

时间:2017-05-26 05:08:04

标签: python dataframe

我所拥有的是一个包含2个以上列的数据框

columnA columnB
    1      a
    1      b
    1      c
    2      d

我只想将columnA列为此

columnA columnB rankA
    1      a      1
    1      b      2
    1      c      3
    2      d      1

那我该怎么办?

1 个答案:

答案 0 :(得分:1)

使用groupby + cumcount

df['rankA'] = df.groupby('columnA').cumcount() + 1
print (df)
   columnA columnB  rankA
0        1       a      1
1        1       b      2
2        1       c      3
3        2       d      1