PythonDataFrame:添加一列,重复另一列的值,但方式不同

PythonDataFrame:添加一列,重复另一列的值,但方式不同,python,pandas,Python,Pandas,我有重复ID的数据帧,比如 slNo | Id -----|--- 0 | 1 1 | 2 2 | 2 3 | 3 4 | 3 5 | 2 我希望有一个新的列,重复计数如下: slNo | ID| count| -----|-- |------| 0 | 1 | 1 | 1 | 2 | 1 | 2 | 2 | 2 | 3 | 3 | 1 | 4 | 3 | 2 | 5

我有重复ID的数据帧,比如

  slNo | Id
  -----|---
    0  | 1
    1  | 2
    2  | 2
    3  | 3
    4  | 3
    5  | 2
我希望有一个新的列,重复计数如下:

slNo | ID| count|
-----|-- |------|
0    | 1 | 1    |
1    | 2 | 1    |
2    | 2 | 2    |
3    | 3 | 1    |
4    | 3 | 2    |
5    | 2 | 3    |
有人能帮忙吗?

尝试使用:

输出:

   slNo  Id  c
0     0   1  1
1     1   2  1
2     2   2  2
3     3   3  1
4     4   3  2
5     5   2  3
使用以下方法执行此操作:


计数列的逻辑是什么?
df.groupby('Id').cumcount()+1
Lol和我的一样,哈哈,我比你快9秒haha@U11-前进啊。。你赢了我9秒。哈哈,是的,没问题。你们两个在我把它作为复制品关闭之前回答了这个问题,打败了我
   slNo  Id  c
0     0   1  1
1     1   2  1
2     2   2  2
3     3   3  1
4     4   3  2
5     5   2  3
In [1616]: df['c'] = df.groupby('Id').cumcount()+1

In [1617]: df
Out[1617]: 
   slNo  Id  c
0     0   1  1
1     1   2  1
2     2   2  2
3     3   3  1
4     4   3  2
5     5   2  3