控製圖 - 獲取限制但不應用它們,控製圖也無法保存到數據表大家好
我拼湊了下面的代碼,它創建了控製圖並提出了限制但實際上並沒有應用它們? 除非我在新窗口中重新運行,否則控製圖似乎也無法保存數據表?
我知道有一個新的腳本函數,但不確定它如何應用於我的代碼?感謝所有提供的幫助!
Names Default To Here( 1 );
dt = Current Data Table();
cc = dt << Get Column Names( numeric, "Continuous" );
nw1 = New Window( "Control Charts" );
For( i = 1, i <= N Items( cc ), i++,
Current Data Table( dt );
obj = dt<< Control Chart(
Sample Label( :YYYYMM ),
Group Size( 1 ),
KSigma( 3 ),
Chart Col( As Column( cc[i] ) ),
Chart Type(Individual Measurement) ,
Get Limits (
"C:\Users\Limitsw.jmp"
));
nw1 << append( Report( obj ) );
obj << Close Window;
);
分析數據表腳本回复:控製圖 - 獲取限制但不應用它們也控製圖無法保存到數據表那太好了,謝謝!
回复:控製圖 - 獲取限制但不應用它們也控製圖無法保存到數據表這是對您的腳本的簡單修改,它是一個代碼生成器,用於創建生成所有控製圖所需的代碼並將該代碼保存到數據表
Names Default To Here( 1 );
dt = current data table();
cc = dt << Get Column Names( numeric, "Continuous" );
// Create a string variable that contains all of the JSL required to create
// and save the control charts to the data table
theExpr = "dt << new script(\!"Control Charts\!", nw=New window(\!"The Control Charts\!"";
For( i = 1, i <= N Items( cc ), i++,
obj = dt << Control Chart(
invisible,
Sample Label( :Month Alerted ),
Chart Col( cc[i], Individual Measurement ),
Get Limits( "C:\Users\Limits.jmp" ),
);
theScript = char(obj << get script);
theExpr = theExpr || "," || theScript;
);
theExpr = theExpr || "));";
// Run the created string variable
eval(parse(theExpr));
回复:控製圖 - 獲取限制但不應用它們也控製圖無法保存到數據表選項 1 - 我不熟悉也不知道如何正確創建它。
選項 2 - 我已經嘗試過了,雖然它會在一個腳本窗口中顯示它,但我看不出如何將它保存回我的數據表。 我正在尋找 40 個單獨的控製圖窗口,以成為所有控製圖的 1 個窗口。 下面的代碼完成了 40 個窗口的工作。
Names Default To Here( 1 );
dt = Current Data Table();
cc = dt << Get Column Names( numeric, "Continuous" );
For( i = 1, i <= N Items( cc ), i++,
obj = dt << Control Chart(
Sample Label( :Month Alerted),
Chart Col( cc[i], Individual Measurement ),
Get Limits( "C:\Users\Limits.jmp" ),
);
obj << Save Script to Data Table;
);
非常感謝您的支持
回复:控製圖 - 獲取限制但不應用它們也控製圖無法保存到數據表我看到有兩種方法可以執行所需的操作,假設從您的代碼來看,控製圖都來自同一個數據表的列,因為您總是引用當前數據表(如果是這種情況,您也可以將其放在循環之外。
- 堆疊感興趣的列並使用標籤列的變量(原始數據表的實際列名)在一個窗口中創建所有控製圖。 然後你可以將 Bygroup 腳本保存到數據表中
- 保留 for 循環,將腳本保存到腳本窗口而不是數據表。 這應該將所有腳本寫在彼此之間。 然後將腳本窗口的內容保存到你的數據表中。
只是一些想法:)
回复:控製圖 - 獲取限制但不應用它們也控製圖無法保存到數據表沒關係,我剛剛解決了這個問題。
我想知道你是否可以幫忙做點別的
我在用
obj << Save Script to Data Table;
但我有 40 個控製圖,所以我真的希望將它們合併並保存?
非常感謝
回复:控製圖 - 獲取限制但不應用它們也控製圖無法保存到數據表如果沒有更多信息,例如您參考的限製表或您使用的樣品標籤的數量,很難提供幫助,因為它們可能取決於您使用的表。 但是如果我們創建這樣一個表並且標籤太多或太少,控製圖可能完全沒用,我們可以嘗試很長時間來弄清楚你的體驗。對不起,如果這似乎是直接的:)