特定の列を選択して連結するこんにちは、みんな、
今、私はたくさんのデータテーブルを開き、それをdatalistというリストに入れました。
For(i = 2 ,i <= N Items(datalist) , i++,
fdt = datalist[1];
fdt<< Concatenate(Data Table(datalist[i]),append to first table(1));
close(Data Table(datalist[i]),nosave);
);
fdt << set name( "Final_Table");
これはすべてを連結し、何百ものテーブルを連結しようとすると時間がかかります。
列のインデックスがあり、連結したいものが正確にわかっています。
今のところ、最初の7列と指定されたインデックス番号(たとえばparam_index = 10)をすべてのテーブルに連結する必要があります。
したがって、最後のテーブルには、すべてのデータテーブルを含む8つの列があります。
私はしばらくこれにこだわっています。これを行う方法がありますか?
または
上記のスクリプトを使用して連結できるように、列(8列)をサブグループ化してリストに最初から保存する方法はありますか?
どうもありがとうございます。
再:特定の列を選択して連結するJimの考えを基にして、おそらく 'Open()'の 'Select Columns'オプションも役に立つかもしれません。
再:特定の列を選択して連結する各テーブルを開くときに、不要な列を削除することをお勧めします。 最初のテーブル以外のすべてを "Private"にすることもできます。
また、各テーブルをループして連結してから次のテーブルに進むのではなく、すべてのテーブルを1つのステップで連結するかどうかも確認できます。 これはより速いことを証明するかもしれません。
再:特定の列を選択して連結するこんにちは @vishwasanj 、
これを試して
Clear Globals() ; Clear Log();
// Open Sample Data
dt = Open( "$SAMPLE_DATA/Air Traffic.jmp" );
// Generate Some random tables
nSteps = N Rows(dt)/100;
// Define Columns you want to use
DesiredCols = {"Airline","Flight Number","Flight ID","Event"};
for( i = 1 , i < = N Row(dt), i++,
dt << Select Randomly( 0.1 );
dt1 = dt << Subset(Selected Rows(1), Columns(DesiredCols));
dt1 << Show Window(0);
);
これは、必要な列だけを選択する方法を示しています。これができたら - 必要な列だけを連結するために必要なコードを使用できます。
ベスト
ウデイ