你好,
我有以下數據,我想使用 Lag 函數來計算每個結果與先前的結果之間的差異(數據表也附在該訊息中)。
我正在使用 JMP 16。

目前我在「差異」列中使用以下公式:

我不明白的是,一旦計算到達批次 B,如何讓計算「重置」。 ,使其在批次內正常工作。
有人有建議嗎?
傑夫
將你的公式改為
If( :"Time Point (months)"n == 0,
.,
:Result - Lag( :Result )
)
您也可以利用 Col Moving Average 來取得先前的值( 資料準備-用其他欄位減去列資料)
:Result- (Col Moving Average(:Result, 1, 1, 0, :Lot Number) * 2 - :Result)
但就你而言,使用吉姆建議的東西很可能會更好。您也可以使用 Dif 函數來代替 Lag
If( :"Time Point (months)"n == 0,
.,
Dif(:Result, 1)
)
如果您經常需要此類分組滯後操作,您可以看看
市場中的https://marketplace.jmp.com/appdetails/Normalization+GUI 。
它基於@jthi的方法結合分組實現了 N-1:

這需要很痛苦才能記住確切的語法:)
此外,平台會自動處理已排除的行。