やあ、
私はJSLスクリプトを初めて使用します。 同じ共通名からの列を積み重ねたい(特定の長さまで)。 列名「66_CORR_B1_W00」など、 「66_CORR_B1_W01」から「66_CORR_B1_W12」まで。 それらは名前付きの単一の列にある必要があります""66_CORR_B1". これは、「66_CORR_B2」で始まる別の列グループ名に対して繰り返されます。 これらの列の 20 のグループが存在する可能性があります。 最後に、20 個の列グループから 20 個の列が必要です。
ここに、サンプル データ テーブルを添付します。
前もって感謝します。
ムハンマド・ラーマン
以下は、最初のディスカッション エントリに含めたサンプル データに対して機能するスクリプトです。
Names Default To Here( 1 );
dt = Data Table( "Sample_data" );
ColList = dt << get column names( string, numeric );
// Loop across the column names and find only the
// columns desired
For( i = N Items( ColList ), i >= 1, i--,
If( Contains( ColList[i], "66_CORR_B" ) == 0,
ColList = Remove( ColList, i, 1 )
)
);
// Sort the columns to ensure they are in the correct order
// for the contiguous stacking
ColList = Sort List( ColList );
// Stack the data
Data Table( "Sample_data" ) << Stack(
columns( ColList ),
Source Label Column( "Label" ),
Stacked Data Column( "Data" ),
Number of Series( 2 ),
Contiguous
);
スクリプトは非常に基本的なもので、各グループの列数が等しくない状況、選択される列が適切な名前のセットに従っていない状況をチェックしません。
しかし、それはあなたにどのように進めるかのアイデアを与えるはずです