來自 Formula 的 Kendall's Tau你好
我在另一個線程中遇到了一些問題,涉及是否需要從公式而不是腳本中獲取線性擬合斜率。
這個問題是類似的。 有沒有辦法使用公式(而不是使用多變量分析或腳本)提取給定時間序列參數的肯德爾 Tau ?
我的目標是測試生成數據的不同時間長度的非參數趨勢(即希望設置滾動窗口,然後測試肯德爾的鈦)。謝謝 ....
回复:方程式中的肯德爾 Tau吉姆
這效果很好。
唯一的小問題是在公式中使用“當前數據表”時出現警告。
JMP 會拋出警告,指出要使用 Eval 或 Expr Eval 函數。
我可能會在完成計算後激活然後停用此功能。
這是很大的幫助。 非常感謝。
回复:方程式中的肯德爾 Tau當您在公式中使用 JMP 平台時,就像您以交互方式或在腳本中使用它們一樣,平台的輸入必須是數據表中的列。因此,您無法通過創建輸入矩陣來引用輸入。因此,我為使您的公式發揮作用所做的就是利用能夠從數據表中排除行的功能,並且當平台運行時,它將忽略這些行。這是公式及其創建的輸出:
dt = Current Data Table();
If( Row() >= 10,
currentRow = Row();
dt << clear rowstates;
dt << select where( Row() <= currentRow - 10 | Row() > currentRow );
excludeRows = dt << get selected rows;
dt << hide and exclude;
mv = dt << Multivariate(
invisible,
Y( :TimeStep, :F ),
Estimation Method( "Row-wise" ),
Matrix Format( "Square" ),
Scatterplot Matrix( Density Ellipses( 0 ), Shaded Ellipses( 0 ) ),
Kendall's τ( 1 )
);
tau = (Report( mv )["Nonparametric: Kendall's τ"][Number Col Box( 1 )] << get)[1];
mv << close window;
If( Row() == N Rows( dt ),
dt << clear rowstates
);
tau;
);
數據表

我建議您創建列並運行公式後,轉到“列信息”對話框,然後刪除公式。它將保留靜態值,但不會一遍又一遍地重新運行公式......它不是最快的
回复:方程式中的肯德爾 Tau看到你關於線性斜率的其他答案,我得到了另一個關於在哪裡放置 MK 索引的想法,但也不起作用。
附在我最近的第五次嘗試中
回复:方程式中的肯德爾 Tau你好
感謝這個很好的答案。 這對我來說實際上是一個啟示,因為這表明公式可以包含類似腳本的結構,這是我所不知道的。
我接受了你的解決方案,但再次需要你的幫助。
上傳樣本數據集。
我對 MK tau 的需求是單列的行。 這實際上是在 col Tau_WholeData 中正確完成的(我根據您之前的幫助改編)。
我真正想做的是獲取時間步長中單個參數的趨勢(如果願意的話,可以是時間趨勢)。
因此,我嘗試設置一個大小為 10 的移動(滾動)窗口,從第 10 行開始窗口,然後將其移動一個記錄(行) - 每次計算前 10 行的 MK Tau 。
我對10 行使用Index 函數(例如Index( Row() - 9, Row() ))做了類似的事情,並且嘗試了3-4 種不同的選項將其放入Tau_WholeData 公式中- 到目前為止沒有成功。
如果您能讓我知道我應該如何改變這一點,我將不勝感激。
謝謝 ...
回复:方程式中的肯德爾 Tau這是對數據表中所有分析列的計算,並放入計算公式列的行中。附數據表,公式如下
