サマリー表と列追加の操作こんにちは、
2つ質問があります。
1)2つの列の間の行の値を合計するにはどうすればいいですか。以下のコードの抜粋を見つけましたが、5番目の値をコピーして新しい行に入れるだけです。各行について、TRの5行目からn列目までのすべての値を加算します。
TotRow = dt << Get Column Names( Numeric );
TR = N Items( TotRow );
dt << New Column( "Total", Numeric );
For Each Row( :Total[] = (Sum( (:(Column( dt, TotRow[5 :: TR] ))) )) );
2)次に、サマリーテーブルをどのように管理しますか。要約表の値をソートしてから列を(この順序で)追加しようとしています。ただし、このスクリプトを実行すると、複数のサマリー表(基本表と新しい列を含む表)が開きます。また、2つの操作を正しい順序で実行することもありません。修正したものが欲しいだけで、それをさらに追加するためにそれを参照できるようにしたいのです。以下に示すコード:
dt2 = dt << Summary( Group( :Name, :Final ), Link to original data table( 0 ) );
dt2 << Sort( By( :Final ), Order( Descending ) );
dt2 << New Column( "Description", Character, Values( {"a", "b", "c"} ) );ありがとうございます。このディスカッション掲示板が私に与えてくれた助けに感謝します。
サマリー表と列追加の操作これは両方の質問に答えるスクリプトです。 あなたは使い始める必要があります
ヘルプ==>スクリプトインデックス
すべての機能とプラットフォームのオプションの完全なリストを取得する
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA\big class.jmp" );
// First way
dt << New Column( "HW Sum", formula( :Height + :Weight ) );
// Second Way
dt << New Column( "Create with Loop" );
For Each Row( :Create with Loop = :Height + :Weight );
// Second Question.....use the Replace Table option on the sort
dt2 = dt << Summary( Group( :Sex ), Link to original data table( 0 ) );
dt2 << Sort( By( :Sex ), Order( Descending ), Replace table( 1 ) );
dt2 << New Column( "Description", Character, Values( {"a", "b", "c"} ) );