您好,
我希望你能幫助我。 我對JSL還是很陌生。 我有以下問題:
我有一張這樣的桌子:
特徵數據USL
編號1規格A
編號2規格A
編號3規格A
B號4規格B
B號5規格B
B號6規格B
該功能應與數據過濾器一起選擇。 然後,數據應顯示在控製圖中,尤其是功能。 當然,同時,圖表中每個功能的規格限制也應顯示。
如何將其納入腳本? 我只設法在圖表中顯示一項功能的規格限制的數據。 如果在過濾器中選擇其他功能,則將保留第一個規格限制。
該解決方案可能微不足道,但我無法弄清楚。
謝謝您的幫助!
我確定Jim可以幫助編寫腳本,但是我不得不問你為什麼要使用規範。控製圖上的限制? 規格極限是從過程中的實際可變性中獨立得出(或確定的)。 令人困惑的控制限制和規格。限制將使人們更加難以理解過程中發生的事情。 如果您使用的是Shewhart類型圖,則控製圖旨在了解子組內變化的一致性/穩定性(範圍圖),然後將內部圖與它們之間的差異(X條形圖)進行比較。 您正在繪製平均值,通常是規格。與個人有關,而不是平均數。 眼鏡。旨在確定形式,裝配和功能的限制。 如果您想獲得變異性的估計值(Rbar / d2)並創建分佈,則可以添加規格。到分發。
大多數時候,如果您希望在JMP中有規範限制,我建議拆分數據並使用列屬性。 還有一個原因為什麼您必須使用數據過濾器(如果使用拆分數據,則將使用列切換器)?
看下面的腳本,
它創建一個表,並且在其中是可以執行所需功能的腳本。
它將功能拆分為列並設置USL。
我認為與@jthi ,在不同的列中包含不同範圍(或規格)的數據會更容易。
New Table( "test-split",
Add Rows( 9 ),
New Script(
"__split_usl",
cdt = Current Data Table();
Summarize( cdt, spec_lst = by( :Feature ), usl_lst = Mean( :USL ) );
sdt = cdt << Data Table( "test-split" ) <<
Split(
Split By( :Feature ),
Split( :data ),
Remaining Columns( Drop All ),
Sort by Column Property,
Output table( "Split Table with USL" )
);
For( i = 1, i <= N Items( spec_lst ), i++,
Eval(
Eval Expr(
Column( sdt, spec_lst[i] ) <<
Set Property(
"Spec Limits",
{USL( Expr( usl_lst[i] ) ), Show Limits( 1 )}
)
)
)
);
),
New Column( "Feature",
Character,
"Nominal",
Set Values( {"A", "A", "A", "B", "B", "B", "C", "C", "C"} )
),
New Column( "data",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [1, 2, 3, 4, 5, 6, 7, 8, 9] )
),
New Column( "USL",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Selected,
Set Values( [3, 3, 3, 6, 6, 6, 9, 9, 9] )
)
);