У меня есть фрейм данных, в котором я хочу продолжать увеличивать значение до тех пор, пока val
не изменится, а когда id
изменения не сбросят count
значение
data = [['p1',1],
['p1',1],
['p1',2],
['p2',3],
['p2',5],
['p3',1],
['p3',2],
['p3',1]]
df = pd.DataFrame(data = data,columns = ['id','val'])
Желаемый результат
id val count
0 p1 1 1
1 p1 1 1
2 p1 2 2
3 p2 3 1
4 p2 5 2
5 p3 1 1
6 p3 2 2
7 p3 1 3
У меня до сих пор
df['count'] = (df.val.diff() != 0).cumsum()
Это изменяется только при изменении val
столбца, но не сбрасывается при id
изменении столбца