PythonDataFrame:添加一列,重复另一列的值,但方式不同
我有重复ID的数据帧,比如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
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