基于python中的现有计数器添加新计数器

基于python中的现有计数器添加新计数器,python,pandas,Python,Pandas,我有一个像这样的系列 col 0 1 1 2 2 3 3 4 4 1 5 2 6 3 7 1 8 2 9 3 10 1 11 2 col col2 0 1 1 1 2 1 2 3 1 3 4 1 4 1 2 5 2 2 6 3 2 7 1 3 8 2 3 9 3 3 10 1 4 11 2 4 我

我有一个像这样的系列

   col
0   1
1   2
2   3
3   4
4   1
5   2
6   3
7   1
8   2
9   3
10  1
11  2
   col  col2
0   1     1
1   2     1
2   3     1
3   4     1
4   1     2
5   2     2
6   3     2
7   1     3
8   2     3
9   3     3
10  1     4
11  2     4
我想生成第二个计数器,看起来像这样

   col
0   1
1   2
2   3
3   4
4   1
5   2
6   3
7   1
8   2
9   3
10  1
11  2
   col  col2
0   1     1
1   2     1
2   3     1
3   4     1
4   1     2
5   2     2
6   3     2
7   1     3
8   2     3
9   3     3
10  1     4
11  2     4
在python中如何实现这一点

如果1始终是组的开始,则通过比较创建掩码,然后为累积和添加:

df['col2'] = df['col'].eq(1).cumsum()
print (df)
    col  col2
0     1     1
1     2     1
2     3     1
3     4     1
4     1     2
5     2     2
6     3     2
7     1     3
8     2     3
9     3     3
10    1     4
11    2     4
如果1始终是组的开始,则通过比较创建掩码,然后为累积和添加:

df['col2'] = df['col'].eq(1).cumsum()
print (df)
    col  col2
0     1     1
1     2     1
2     3     1
3     4     1
4     1     2
5     2     2
6     3     2
7     1     3
8     2     3
9     3     3
10    1     4
11    2     4