1 つのテーブルに制限が保存された管理図 (すべて数値列) のスクリプトやあ、
複数の管理図 (データ テーブルのすべての数値列) を含む 1 つのウィンドウ/レポートを生成しようとしています。 これまでのところ、このレポートを生成できました。 しかし、すべての制限を 1 つのデータ テーブルに保存することはできません。 誰でも私を助けることができますか?
私のコードに従う
dt = Current Data Table ();
//Deselection von allen Spalten
cols = dt << get column names();
For(i = 1, i <= N Col(dt), i++,
cols[i] << set selected (0)
);
//Selection
cc = dt << Get Column Names( numeric );
ncols = N Items( cc );
For( i = 1, i <= ncols, i++,
cc[i] << Set Selected( 1 )
);
nw1 = New Window ("Control Charts");
For( i = 1, i <= ncols, i++,
test = cc[i];
conc = Control Chart(
Group Size( 1 ),
KSigma( 3 ),
Chart Col(as Column (test) ),
Chart Type( Moving Range )
); nw1 << append (Report(conc)); conc << Close Window);
nw1 << in New Table;Re: 管理図 (すべて数値列) のスクリプトで、制限が 1 つのテーブルに保存されている. . .列のプロパティを使用した代替方法は次のとおりです。
NamesDefaultToHere(1);
// Make a table with some random data
dt = NewTable("Charts");
n = 5;
dt << addMultipleColumns("C_", n, Numeric);
dt << addRows(20);
for(c=1, c<=n, c++, Column(dt, "C_"||Char(c)) << formula(RandomNormal(0, 1)));
dt << runFormulas;
// Put the charts into a single window
nw1 = New Window ("Control Charts",
For( c = 1, c <= n, c++,
thisCC = dt << Control Chart(
Group Size( 1 ),
KSigma( 3 ),
Chart Col(Column(dt, "C_"||Char(c))),
Chart Type( Moving Range )
);
// Save the computed limits as a column property
thisCC << inColumn;
);
);
// Make a blank limits table
dt2 = NewTable("Limts",
NewColumn("Column", Character),
NewColumn("Avg", Numeric),
NewColumn("LCL", Numeric),
NewColumn("UCL", Numeric),
<< addRows(n)
);
// Populate the limits table by parsing the saved column property
For( c = 1, c <= n, c++,
clExpr = Column(dt, "C_"||Char(c)) << getProperty("Control Limits");
Column(dt2, "Column")[c] = "C_"||Char(c);
Column(dt2, "Avg")[c] = Arg(Arg(Arg(clExpr, 1), 1), 1);
Column(dt2, "LCL")[c] = Arg(Arg(Arg(clExpr, 1), 2), 1);
Column(dt2, "UCL")[c] = Arg(Arg(Arg(clExpr, 1), 3), 1);
);
これはもっと簡単かもしれないと思います管理図ビルダー、しかし私はチェックしませんでした(とにかく「古い」プラットフォームを使用する理由があるかもしれません)。
Re: 管理図 (すべて数値列) のスクリプトで、制限が 1 つのテーブルに保存されているどうもありがとうございます。 それは完全に機能します。 時間を大幅に節約できます:)
Re: 管理図 (すべて数値列) のスクリプトで、制限が 1 つのテーブルに保存されているこれがあなたのコードに対する私の解決策です。 この特定の問題に対して何の目的も果たしていないと思われるコードをコメントアウトしました
Names Default To Here( 1 );
dt = Current Data Table();
//Deselection von allen Spalten
/*cols = dt << get column names();
For( i = 1, i <= N Col( dt ), i++,
cols[i] << set selected( 0 )
);*/
//Selection
cc = dt << Get Column Names( numeric );
/*ncols = N Items( cc );
For( i = 1, i <= ncols, i++,
cc[i] << Set Selected( 1 )
);*/
nw1 = New Window( "Control Charts" );
For( i = 1, i <= N Items( cc ), i++,
Current Data Table( dt ); // Should not be required, but script would not work without it
conc = dt << Control Chart( Group Size( 1 ), KSigma( 3 ), Chart Col( As Column( cc[i] ) ), Chart Type( Moving Range ) );
concDT = conc << in New Table;
concDT << New Column( "Column", character, set each value( Char( cc[i] ) ) );
Column( concDT, Char( cc[i] ) ) << set name( "Value" );
If( i == 1,
baseDT = concDT,
baseDT << concatenate( concDT, append to first table( 1 ) );
Close( concDT, nosave );
);
nw1 << append( Report( conc ) );
conc << Close Window;
);