データ テーブル操作 (例: スタック、分割など) を高速化するにはどうすればよいですか?多くの場合、何百万行もの非常に大きなテーブルをスタックし、何らかの操作を行ってからテーブルを分割する必要があります。
jsl コード内の「目に見えない」データ テーブルを操作する以外に、これらすべてを高速化するオプションはありますか?
私は Begin/End Data Update コマンドをよく知っていますが、それがここで関連しているか、非表示のテーブル上で何か改善があるかはわかりません。
自動化とスクリプトRe: データ テーブル操作 (例: Stack、Split、...) を高速化するにはどうすればよいですか?Invisible (または Private) は良い出発点であり、その後はテーブルに大きく依存しますが、場合によっては分割/スタックを回避できることもあります。
Re: データ テーブル操作 (例: Stack、Split、...) を高速化するにはどうすればよいですか?私の目標は、同じ列を表す列を結合することです。つまり、同じ列を表す列を結合したいのです。年齢、体重、身長の各列が2列に分散しているサンプルテーブルを添付しました。目標は、それぞれの列を結合することです。
当初は列を積み重ね、関連部分 (年齢/体重/身長) を切り取ってから分割していましたが、データ テーブルが非常に大きい場合は問題が発生します。
Re: データ テーブル操作 (例: Stack、Split、...) を高速化するにはどうすればよいですか?
クエリビルダーを試しましたか?
申し訳ありませんが、質問を誤解していました。クエリビルダーはここでは役に立たないと思います。
Re: データ テーブル操作 (例: Stack、Split、...) を高速化するにはどうすればよいですか?Names Default To Here(1);
dt = Open("$DOWNLOADS/example_input.jmp");
valid_cols = 4;
m = dt[0,0];
r = Transform Each({vals}, m,
nonmissing = Where(!IsMissing(vals));
vals[nonmissing];
);
dt[0, 1::valid_cols] = r;
dt << Delete Columns(valid_cols::N Cols(dt));
Re: データ テーブル操作 (例: Stack、Split、...) を高速化するにはどうすればよいですか?そして、もしこれがデータの実際の様子だとしたら
- 「重複」列を選択してください
- それらと ID 列のサブセットを作成します (まだサブセットがない場合は作成する必要があるかもしれません)
- 欠損値のある行を削除する
- 両方のテーブルで同じ列名に変更します(+余分な列を削除します)
- ID列を持つ元のテーブルでUpdateを使用する
- サブセットを閉じる