これを正しく実装する方法についての説明をいただければ幸いです。
JSLの集計表に計算を追加するこんにちは、みんな、
新しい列を作成して概要に計算を追加しようとして、つまづいた別の質問に戻ります。作成しようとしている GD1 という名前の列があり、列 N(4) と N(5) の値を合計したいと考えています (存在する場合)。これらの列の存在を確認し、存在する場合はそれらを合計しようとする試みは次のとおりです。これはデバッガーで終了するようですが、理由がわかりません。
Data Table( "Fun pull" ) << Summary(
Group( :Name( "90440011_119325" ) ),
N,
Subgroup( :Sort_Lot ),
Freq( "None" ),
Weight( "None" );
newcol1 = Expr(
Current Data Table() << New Column( "GD1",
Numeric,
"Continuous",
Formula( Sum( :Name( "N(1)" ), :Name( "N(2)" ), :Name( "N(3)" ) ) )
)
);
Eval( Eval Expr( newcol1 ) );
newcol2 = Expr(
Current Data Table() << New Column( "Test",
formula(
If( Contains( Current Data Table() << get column names( string ), "N(4)" ),
Sum( :GD1, Name( "N(4)" ) ),
If( Contains( Current Data Table() << get column names( string ), "N(5)" ),
Sum( :GD1, Name( "N(5)" ) ),
Sum( :GD1 )
)
)
)
);
Eval( Eval Expr( newcol2 ) );
);
)
これを正しく実装する方法についての説明をいただければ幸いです。
品質およびプロセスエンジニアリングRe: JSL の集計テーブルに計算を追加するJSL の主な問題は、サマリー プラットフォームの閉じ括弧に、新しい列を作成するためのすべての JSL が含まれていたことです。サマリー プラットフォームを完成させてから、新しい列を追加する必要があります。
第 2 に、データ テーブル内の列の実際の名前の詳細はサマリー プラットフォームで作成されるため、試みているコードの複雑さを使用する必要はありません。以下の例では、コードを簡略化しています。
第 3 に、コードを変更してデータ テーブル参照をより具体的にし、コードを読みやすくし、JMP がどのデータ テーブルを操作するかを正確に認識できるようにしました。また、構造から複雑な名前を持つ列への参照を変更しました
:Name( "name" )
に
:"name"n
これは、今後使用される発表済みの構造です。
Data Table( "semiconductor capability" ) << Summary(
Group( :"90440011_119325"n ),
N,
Subgroup( :Sort_Lot ),
Freq( "None" ),
Weight( "None" ),
Output Table( "New Table" )
);
Data Table( "New Table" ) << New Column( "GD1",
Numeric,
"Continuous",
Formula( Sum( :"N(1)"n, :"N(2)"n, :"N(3)"n ) )
);
Current Data Table() << New Column( "Test",
formula(
If( Contains( Data Table( "New Table" ) << get column names( string ), "N(4)" ),
Sum( :GD1, :"N(4)"n ),
If( Contains( Data Table( "New Table" ) << get column names( string ), "N(5)" ),
Sum( :GD1, :"N(5)"n ),
Sum( :GD1 )
)
)
)
);
Re: JSL の集計テーブルに計算を追加するとても分かりやすい説明、有難う御座いました!