Кадр данных df
определяется следующим образом:
import pandas as pd
df1 = pd.DataFrame({'A':[False,True,True,False,True,True,True,True,False,True,True], 'B':[0,0,0,2,2,1,0,0,1,0,0]}, columns=['A','B'])
df1
A B
0 False 0
1 True 0
2 True 0
3 False 2
4 True 2
5 True 1
6 True 0
7 True 0
8 False 1
9 True 0
10 True 0
Всякий раз, когда столбец A
равен False
, но значение в столбце B
равно >0
, тогда False
следует перемещать в следующую строку, пока B
не станет 0
. Таким образом, желаемый результат для вышеупомянутого кадра данных -
A B
0 False 0
1 True 0
2 True 0
3 True 2
4 True 2
5 True 1
6 False 0
7 True 0
8 True 1
9 False 0
10 True 0