у меня есть датафрейм
Id Seqno. Event
1 2 A
1 3 B
1 5 A
1 6 A
1 7 D
2 0 E
2 1 A
2 2 B
2 4 A
2 6 B
Я хочу, чтобы все события произошли, так как счетчик недавнего появления шаблона A = 2 для каждого идентификатора. SEQNO. порядковый номер для каждого идентификатора.
Выход будет
Id Seqno. Event
1 5 A
1 6 A
1 7 D
2 1 A
2 2 B
2 4 A
2 6 B
пока я пытался,
y=x.groupby('Id').apply( lambda
x:x.eventtype.eq('A').cumsum().tail(2)).reset_index()
p=y.groupby('Id').apply(lambda x:
x.iloc[0]).reset_index(drop=True)
q= x.reset_index()
s= pd.merge(q,p,on='Id')
dd= s[s['index']>=s['level_1']]
Мне было интересно, есть ли хороший способ сделать это.