從列屬性取得控制限制我之前發現這個主題是為了從列屬性中提取規格限制。
https://community.jmp.com/t5/Discussions/Get-column-Property-and-store-as-list/td-p/50885
然而,我也需要對控制限製做類似的事情。然而,同樣的原則對此不起作用。
CTRL = Column(列名) << Get Property( "控制限制" );
LCL = CTRL["LCL"];
傳回:未找到名稱。在存取或評估 'Subscript' 時,CTRL[/*###*/"LCL"]
我不明白為什麼這裡的索引不一致。總的來說,JSL 似乎與存取索引物件欄位資訊非常不一致。我有什麼遺漏的嗎?我似乎花了一半的時間編寫腳本只是想弄清楚如何存取物件中嵌入的資訊。
回覆:從列屬性取得控制限制哇,那太醜了。 我很驚訝沒有直接的方法來提取這些數據... 我想更有理由盡可能地將更多程式碼推到 JMP 之外。我很欣賞這個答案,特別是考慮到完成任務所需的深度。
回覆:從列屬性取得控制限制事情沒那麼簡單……但願如此。這是我使用過的一些代碼......可能有更好的代碼......我為個人測量限制定制了它......但它可以擴展
cLimits = dt:npn1 << get property( "control limits" );
For( i = 1, i <= N Items( cLimits ), i++,
If( Trim( Word( 1, Char( cLimits[i] ), "(,)" ) ) == "Individual Measurements",
IRLimits = Char( cLimits[1] );
k=2;
While( Word( k, IRLimits, "()" ) != "",
If(
Word( k, IRLimits, "()" ) == "Avg",
Avg = Word( k + 1, IRLimits, "()" ),
Word( k, IRLimits, "()" ) == "LCL",
LCL = Word( k + 1, IRLimits, "()" ),
Word( k, IRLimits, "()" ) == "UCL",
UCL = Word( k + 1, IRLimits, "()" )
);
k++;
);
)
);回覆:從列屬性取得控制限制我注意到了不同的分組,並嘗試了十幾種不同的方法來嘗試將其從子物件中拉出來,但沒有成功。調試器顯示它獲得了我的單獨測量控制限制,但我嘗試的任何形式的索引似乎都無法從物件中提取單獨的限制值。
我希望能夠做類似的事情
拼箱= (CTRL["單獨測量"])["LCL"];
或者
LCL = CTRL("單獨測量")["LCL"];
或類似於常規程式設計/腳本語言的東西,但似乎沒有任何作用。我實際上應該如何存取這些數據?
回覆:從列屬性取得控制限制規格限值並不像控制限值那麼複雜。對於規格限值,基本上有 LSL、目標和 USL。對於控制限,由於控制限的種類不同,您可能有多個不同的 LCL、Avg 和 UCL 分組。請參閱下面同一列的規格限和控制限結構的輸出。
dt:npn1 << get property("spec limits") = {LSL(104.41), USL(131.89), Target(118.15)};
dt:npn1 << get property("control limits") = {XBar(Avg(115), LCL(110), UCL(120), Subgroup Size(3)), R(Avg(10), LCL(5), UCL(15), Subgroup Size(3))};
因此,控制限的檢索和解析必須與規格限完全不同。