你好。 我一直在編寫腳本來自動視覺化分佈、擬合分佈和報告 cpk。 我剛剛完成了一篇長篇文章,確實發現一些發行版的名稱必須如何使用方面存在很多差異。 這需要大量的調試。 我的要求並不小,但我希望 JSL 能夠使發行版名稱的使用更加一致,以便使編寫腳本更有效率且減少混亂。 我將在下面提供範例。
我的腳本採用分佈名稱清單 {"Exponential"、"Normal 2 Mixture"、"Johnson SU"、...},並先產生一個隨機資料表,每個分佈有一列。 然後,它創建分佈圖,擬合數據,提取每個分佈的擬合參數。 它還使用製程能力平台來計算 cpk。 我非常依賴創建 JSL Quotes,然後替換所需的發行版名稱來獲取我需要的確切程式碼。
問題:
- 當我最初想產生隨機資料矩陣時,我需要使用“Exp”而不是“Exponential”,使用“Normal Mixture”而不是“Normal 2 Mixture”。
</CODE><CODE class=" language-jsl">J(100, 1, Random<FONT color="#FF0000"><STRONG>Exp</STRONG></FONT>(...));<BR />J(100, 1, Random<FONT color="#FF0000"><STRONG>NormalMixture</STRONG></FONT>(...));<BR />J(100, 1, Random<FONT color="#FF0000"><STRONG>JohnsonSB</STRONG></FONT>(...));
- 另一方面,為了適應我的數據的分佈,我需要使用“Exponential”而不是“Exp”,“Normal 2 Mixture”而不是“Normal Mixture”,以及“Johnson”而不是“Johnson SB”:
dt << Distribution(
Continuous Distribution(
Column(:colname1),
Fit <FONT color="#FF0000"><STRONG>Exponential,</STRONG></FONT>
Fit <FONT color="#FF0000"><STRONG>Normal 2 Mixture,</STRONG></FONT>
Fit <FONT color="#FF0000"><STRONG>Johnson</STRONG></FONT>
)
)
- 過程能力平台中 Normal 2 Mixture 的另一個命名方案:
pc = dt << Process Capability(
Process Variables(
:colname1 & Dist(<FONT color="#FF0000"><STRONG>Exponential</STRONG></FONT>),
:colname2 & Dist(<FONT color="#FF0000"><STRONG>Mixture of 2 Normals</STRONG></FONT>),
:colname3 & Dist(<FONT color="#FF0000"><STRONG>Johnson</STRONG></FONT>),
)
)
我最初希望我可以為我的腳本提供一個要嘗試的發行版名稱列表,然後對列表進行 for 循環,將特定名稱添加到 JSL Quote,然後執行。 相反,我發現了一個困難的方法,我需要建立幾個 if 子句來在替換之前修復每個不同操作的發行版名稱。
如果所有這些都可以透過僅使用一組用於所有功能和平台的發行版名稱來簡化,那就太好了。 謝謝。
[使用 JMP Pro 17.2.0]