この循環集計を行う効率的な方法はありますか?ビッグ クラス フォームを使用します。
1. 20 行目から開始して、この行から前の 19 行までのデータのサブセットを抽出します。
2. このサブセットを年齢に従って分類し、身長と体重を集計します。そして、集計結果を 1 つずつ連結します。
ありがとう!
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
j = 1;
For( j = 20, j <= N Row( dt ), j++,
dt << Select Where( j - 20 < Row() <= j );
d3 = dt << Subset( Output Table( "tab" ), Selected Rows( 1 ), selected columns( 0 ) );
d1 = d3 << Summary(
Sum( height ),
Sum( weight ),
Subgroup( age ),
Freq( 0 ),
Weight( 0 ),
Link to original data table( 0 ),
statistics column name format( "column" )
);
If( j == 20,
d2 = d1;
d2 << setName( "tmp" );
,
Current Data Table( d2 );
d2 << Concatenate( Data Table( d1 ), Append to first table );
Close( d1, nosave );
);
Close( d3, nosave );
);
自動化とスクリプト作成ウィンドウズRe: この循環集計を行う効率的な方法はありますか?JSL を自分のやり方で構造化すると、いくつかの優れた JMP 機能を利用することになります。JSL を記述して目的の出力を作成するには、多くのコーディングが必要になります。以下では、スクリプトをもう少し効率的にできるように、スクリプトにいくつかの小さな調整を加えました。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
d2 = New Table( "tmp" );
k = 1;
For( k = 20, k <= N Row( dt ), k++,
dt << Select Where( k - 20 < Row() <= k );
d3 = dt << Subset( Output Table( "tab" ), Selected Rows( 1 ), selected columns( 0 ), private );
d1 = d3 << Summary(
Sum( height ),
Sum( weight ),
Subgroup( age ),
Freq( 0 ),
Weight( 0 ),
Link to original data table( 0 ),
statistics column name format( "column" )
);
d2 << Concatenate( Data Table( d1 ), Append to first table );
Close( d1, nosave );
Close( d3, nosave );
);
「j」というインデックス変数の名前を変更しました。これは混乱を避けるためです。JMP には j() という関数があります。「j」という名前の変数も使用しないことをお勧めします。
Re: この循環集計を行う効率的な方法はありますか?ジムさん、ありがとう!
JMP を使用して、さまざまなサイクルでの各銘柄のチップ ピークをすばやく計算したいと考えています。計算負荷が高すぎます。
Re: この循環集計を行う効率的な方法はありますか?ar=[];ar=J(r,c,0);