我有以下数据框,该数据框是所有先前竞赛者和相关教练的比赛的列表。请注意,培训师会随着时间而改变。
Date R H Fin Trainer
0 11182017 1 1 2 1
1 12182017 2 1 1 1
2 01182018 5 1 6 2
3 02182018 8 1 2 2
4 01182018 1 2 1 2
5 02182018 3 2 5 3
6 03182018 3 2 2 3
我想按日期和时间将每个种族与上一个种族进行比较,确定“ Trainer”何时更改,然后指出该教练有多少次
下面的结果示例
Date R H Fin Trainer #
0 11182017 1 1 2 1 1
1 12182017 2 1 1 1 2
2 01182018 5 1 6 2 1
3 02182018 8 1 2 2 2
4 01182018 1 2 1 2 1
5 02182018 3 2 5 3 1
6 03182018 3 2 2 3 2
感谢您的帮助和建议
答案 0 :(得分:1)
您可以使用cumcount
:
In [11]: df.groupby(["H", "Trainer"]).cumcount() + 1
Out[11]:
0 1
1 2
2 1
3 2
4 1
5 1
6 2
dtype: int64