前向滯後我正在嘗試編寫一個計算前向滯後函數的公式。我有多個資料集,其值是時間的函數(1200Hz)。我想更改這些列,使最大值等於 0.5 秒,這樣當我繪製資料圖表時,我可以在最大值重疊的地方這樣做。我能夠編寫這個公式,使其在列最大值之上工作,但無法使其在反向滯後函數中工作。
如果(
:A == 列最大值( :A ), 0.5,
滯後(列最大值(:A),1),滯後(:B,1)+ 1 / 1200,
滯後(列最大值(:A),-1),滯後(:B,-1) - 1 / 1200
)
從預覽中可以看出,它在

內容組織回覆:前向滯後我相信這就是你所需要的
If(
:A == Col Maximum( :A ), 0.5,
Lag( :A, 1 ) == Col Maximum( :A ), Lag( :B, 1 ) + 1 / 1200,
Lag( :A, -1 ) == Col Maximum( :A ), Lag( :B, -1 ) - 1 / 1200
)
順便說一句......對於響應者來說,不僅將樣本數據顯示為圖片,而且還以機器可讀的形式顯示,這要方便得多。附上你的數據表會很好。
回覆:前向滯後您好,謝謝您的回覆!
這並沒有完全得到我想要的東西。感謝您關於附加數據的說明,因為這是我的第一個問題 - 我不確定正確的協議。我已附在下面。
正如您將看到的,B 列的輸出公式創建了高於0.5 的所需乘積,從那裡開始計數1/1200 秒,但我需要它從0.5 開始向後計數1/1200 秒,這就是我正在努力的地方,因為它取決於 A 列的最大列數
回覆:前向滯後您的 IF() 語句將按照您編寫的方式進行解釋。
然而,
Lag( Col Maximum( :A ), 1 )
傳回值 2693.162203 將被解釋為 TRUE,因此
Lag( :B, 1 ) + 1 / 1200
將被處決。第三次比較永遠不會執行,因為第二次比較將始終傳回正值。
你在期待什麼
Lag( Col Maximum( :A ), 1 )
返回?