У меня есть небольшая проблема с этим. Мой фрейм данных выглядит следующим образом:
id amount dummy
1 130 0
1 120 0
1 110 1
1 nan nan
1 nan nan
2 nan 0
2 50 0
2 20 1
2 nan nan
2 nan nan
Итак, мне нужно сделать, чтобы после того, как фиктивный элемент получил значение = 1, мне нужно заполнить переменную количества нулями для каждого id
, например так:
id amount dummy
1 130 0
1 120 0
1 110 1
1 0 nan
1 0 nan
2 nan 0
2 50 0
2 20 1
2 0 nan
2 0 nan
Полагаю, мне понадобится какая-то комбинация groupby('id')
, fillna(method='ffill')
, может быть .loc
или shift()
, но все, что я пробовал, имело некоторые проблемы или оченьмедленный. Есть предложения?