-1
在數據幀具有以下柱:條件raplacement具有索引移位熊貓
0
0
0
0
0
5
我想檢查的值大於閾值。如果找到,設置爲零並向上移動差值 - 閾值,在新位置上設置閾值。假設threshold = 3,那麼結果列必須是:
0
0
0
3
0
0
任何快速轉換的想法?
在數據幀具有以下柱:條件raplacement具有索引移位熊貓
0
0
0
0
0
5
我想檢查的值大於閾值。如果找到,設置爲零並向上移動差值 - 閾值,在新位置上設置閾值。假設threshold = 3,那麼結果列必須是:
0
0
0
3
0
0
任何快速轉換的想法?
對於這個數據幀:
df Out: A 0 0 1 0 2 0 3 0 4 0 5 5 6 0 7 0 8 0 9 0 10 6 11 0 12 0
threshold = 3
above_threshold = df['A'] > threshold
df.loc[df[above_threshold].index - (df.loc[above_threshold, 'A'] - 3).values, 'A'] = 3
df.loc[above_threshold, 'A'] = 0
df Out: A 0 0 1 0 2 0 3 3 4 0 5 0 6 0 7 3 8 0 9 0 10 0 11 0 12 0
此示例似乎並沒有足夠的代表性。會發生什麼如果我的閾值爲3,則值爲5,並且下面的值爲5兩行。它應該是零還是三? – ayhan
這不可能發生。列中的值(比方說5)是來自另一列0或1的累計結果,表示一系列的和:如果在彼此之後有5次1,則該值在其最後位置處爲5。所以累計值不能大於兩個值之間的指數差。 – Joe