例如,假设这是我的数据框:
row object_id
1 1024
2 1024
3 1024
4 1032
5 1032
6 1048
... ...
我想创建一个专栏occurence_num
如下:
row object_id occurence_num
1 1024 1 # starts count
2 1024 2
3 1024 3
4 1032 1 # restarts count since object_id has changed
5 1032 2
6 1048 1 # restarts count since object_id has changed
... ... ...
在 SQL 中执行此操作的方法也会有所帮助,但我希望能够使用 pandas 来执行此操作。
注意:我找到了一种在 Excel 中执行此操作的方法 here .
最佳答案
您可以使用 cum.count():
df['occurence_num']=df.groupby('object_id').cumcount()+1
>>>print(df)
row object_id occurence_num
1 1024 1
2 1024 2
3 1024 3
4 1032 1
5 1032 2
6 1048 1
关于python - 如何创建一个列来跟踪另一列中的值在 pandas 中的该行之前出现的次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68447898/