num=[1,2,3,4,5,6,7,8,-1,2,3,4,5,6,]
df=pd.DataFrame(num)
df['i_want_that']=[1,2,3,4,5,6,7,8,0,0,0,0,0,0]
print(df)
0 i_want_that
0 1 1
1 2 2
2 3 3
3 4 4
4 5 5
5 6 6
6 7 7
7 8 8
8 -1 -1
9 -1 0
10 -1 0
11 -1 0
12 -1 0
13 -1 0
-1次いで残りのすべての行はゼロいつか -1pandasは行を別の行と比較し、残りの値に希望の値を設定しますか? 「0」の値である場合
を利用することにより、パフォーマンスを向上させることができ、私は新しいの後に-1の値を選択できる[8]とすることができます –
ちょうど私の編集例のように、0の後0 - = 0 ' – jezrael
の2つ目の解では、 'mask =((df [0] == -1).idxmax()+ 1: 1).cumsum()!= 0).shift() ' ' mask.iloc [0] = False' – jezrael