JSL方法從多元離群值分析中取得控制上限是什麼激發了這個願望清單請求?
多元平台的離群值分析可讓您將馬哈拉諾比斯距離、折刀距離等儲存到列中。它將繪製這些圖並顯示當前 alpha 的計算控制上限 - 對於使用距離來評估點是否為異常值非常有用。JMP 將單一值(即 Jackknife 值)放入作為該 UCL 的列屬性(即在 Jackknife Distances 列上)。但是,如果存在“按組”,則每個組都有不同的 UCL 值(基於組中非缺失點的數量),並且列屬性中的該單一值似乎僅適用於最後一個組。
有人可能認為您可以從平台的報告中提取它們,但看起來並非如此 - 它們位於框架框中,而不是報告中的文字方塊中,而且我沒有看到一種提取這些值的方法。
您希望看到什麼改進?
在我的用例中,對於按組,我也希望 UCL 位於一列。但我想看到的可能是向平台詢問這些資訊的能力,也許類似於您可以使用 <
相關:如果在這種情況下有一種好方法來<<獲取群組是什麼以便更好地使用該值列表,那就太好了? 至少我不確定如何在不從報告上的大綱框名稱中解析它的情況下執行此操作。如果您能得到一個方便的列表,其順序與您從 <
為什麼這個想法很重要?
我認為 UCL 有用的原因很清楚 - 您可以將距離與它進行比較,以查看對於給定的置信度,它是否是一個很大的距離?
這是一個社區帖子,其中有人想要這個值,我猜他們只是沒有使用 By,因為對列屬性中的單個值感到滿意:已解決:折刀預測值 - JMP 使用者社群
自動化和腳本編寫基礎資料分析與建模回覆:JSL 方法從多元離群值分析中取得控制上限您可以使用腳本匯出這些值。 這不是最好的方法,但應該表明它是可能的
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Solubility.jmp");
dt << New Column("Group", Numeric, Continuous, Formula(
If(Row() < 20, 1, Row() < 40, 2, 3);
));
mv = dt << Multivariate(
Y(:Ether, :Chloroform, :Benzene, :Carbon Tetrachloride, :Hexane),
Variance Estimation("Row-wise"),
Scatterplot Matrix(1),
By(:Group)
);
mv << Jackknife Distances(1, Save Jackknife Distances);
window = mv[1] << Top Parent;
fbs = window << XPath("//OutlineBox[text()='Jackknife Distances']//FrameBox");
fbs_of_interest = fbs[2::NItems(fbs)::2];
segs = fbs_of_interest << Find Segs(CustomStreamSeg(1));
seg_scripts = segs << get script;
ucls = {};
For Each({seg_script}, seg_scripts,
Insert Into(ucls, seg_script[1]["Text"][2]);
);
show(ucls);回覆:JSL 方法從多元離群值分析中取得控制上限聰明的!我曾嘗試使用 FindSegs 未成功。但這並沒有改變我對直接請求這些值的方式的願望。
回覆:JSL 方法從多元離群值分析中取得控制上限Kudo + Kudo 提供了很好的解決方法:)
@jthi你怎麼發現它是自訂流段?
有沒有類似的東西<< 列出段?


回覆:JSL 方法從多元離群值分析中取得控制上限最有可能的是透過猜測和嘗試不同的事情(我知道它是 FrameBox -> 我知道可能有顯示段 -> 從那裡開始(檢查 xml,使用 << find segs... 或只是從 xml 開始)。 沒有必要訪問那個奇怪的 CustomStreamSeg,因為您可以從訪問其 LineSeg 的“早期”FrameBox 獲取 UCL 值
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Solubility.jmp");
dt << New Column("Group", Numeric, Continuous, Formula(
If(Row() < 20, 1, Row() < 40, 2, 3);
));
mv = dt << Multivariate(
Y(:Ether, :Chloroform, :Benzene, :Carbon Tetrachloride, :Hexane),
Variance Estimation("Row-wise"),
Scatterplot Matrix(1),
By(:Group)
);
mv << Jackknife Distances(1, Save Jackknife Distances);
window = mv[1] << Top Parent;
linesegs = window << XPath("//FrameBox[@helpKey = 'Multiv Outlier']/LineSeg[@description='UCL Line']");
ucls = {};
For Each({yvals}, linesegs << Get Y Values,
Insert Into(ucls, yvals[1]);
);
show(ucls);回覆:JSL 方法從多元離群值分析中取得控制上限謝謝 :)
在這裡使用 XML 也是一個不錯的技巧 - 我預計它會停止在 FrameBox 層級。
XPath 在這裡也能工作,這很酷…
回覆:JSL 方法從多元離群值分析中取得控制上限關於此的其他一些觀察結果可能值得一看:當您以這種方式保存Jackknife 距離時(來自多元平台的離群值分析),您不會獲得公式列,但如果您保存Mahalanobis 距離或T 平方,則會獲得公式列。 Jackknife 距離的結果確實與多元方法文件中描述的公式相匹配,但是對於簡單的一維情況,這並不能始終導致缺失值,其中所有其他值都相同,因此它們的標準差為0,這可能會導致在這種情況下要么缺失,要么值非常大。