这是一种蛮力方法。可能有些更优雅的方法,但是您可以像这样显式地遍历行:
df = pd.Dataframe([0, -1, -1, -1, 0 , 0, 0, 1, 0])df.columns = ['A']df['B'] = df['A']# loop herefor i in range(1,len(df)): if df.A[i] == 0 and df.B[i-1] == -1: df.B[i] = -1 else: df.B[i] = df.A[i]
这为您提供了您想要的结果:
>>> df['B']0 01 -12 -13 -14 -15 -16 -17 18 0



