さまざまなテーブルに対して複数の分析を実行しています。 各表には診断の列があり、診断の種類は 900 種類以上あります。 そこで私がやっているのは、列を再コーディングしてから、各診断を 40 の「診断クラス」に再分類することです。 ただし、これはテーブルごとに診断列の再コーディングを繰り返す面倒なプロセスです。
900 件の診断を 40 のクラスターにグループ化し、同じ再コード化プロセスを異なるテーブルの同様の列に適用するためのロジックをキャプチャする再コード化スクリプトの作成に支援が必要です。 再コード化スクリプトを保存して新しい列に適用する方法はありますか?
ありがとう...
JMP V14.2を使用しています。
再コードしたコラムのスクリプトを保存することができました。 別のテーブルでスクリプトを実行して、それが機能するかどうかを確認してみます。
ありがとう
モカ博士
あなたの投稿からは、クラスタリング分析から 40 の分類を作成しているのか、それとも診断名に基づいて Recode を使用して手動で作成しているのかは明らかではありません。
また、使用している JMP のバージョンについても言及していませんでした。 1 つのテーブルの 900 ~ 40 カテゴリを再コーディングした場合、JMP のバージョンに応じて、[スクリプト] > [ファイルに保存] のオプションが表示される場合があります。 以下は、JMP PRO v 14.2 を使用したオプションのスクリーンショットです。 保存スクリプトが添付されています。各ファイルを開いた後にこのスクリプトを実行すると、recode 列 (私のスクリプトでは元の 2 と呼ばれています) が自動的に作成されます。ただし、非常に大きなファイルがある場合のパフォーマンスはわかりません。 (詳細は以下で説明します)。

非常に速く動作すると思われるのは、キー付きリストである連想配列です。
テーブルが2つ付いていますが、
- firsttbl_recodebyhand.jmp
- newtbl.jmp
firtstbl_recodebyhand.jmp を開きます。 元の列と再コード化された列が必要です。その後、このスクリプトを実行し、手動で再コード化されたテーブルの列に一致するように名前を変更して、このスクリプトを実行します。
dt = current data table();
ng_aa = Associative Array(:original, :original2);
aa_str = "ng_aa =" || Log Capture(write(ng_aa)) ||";";
save text file("c:\temp\myrecode.txt", aa_str);
次に newtbl.jmp を開きます。 さらに多くの行があり、順序はランダムであることに注意してください。 次にこのスクリプトを実行します
names default to here(1);
dt = current data table(); //open newtbl
_cmd_str = LoadTextFile("c:\temp\myrecode.txt");
Eval(Parse(_cmd_str));
dt << new Column("original 2", character, <<SET each="" value=""></SET>
連想配列は検索関数として機能します。連想配列は、JMP のすべてのバージョンで使用できる可能性があります。
これまでの説明では、手動で再コーディングされた列があることを前提としています。K 平均法クラスター分析やその他のアルゴリズム手法などの他の手法を使用したことがある場合、JMP にはおそらく [数式を保存] オプションがあり、新しいファイルを開くたびにその数式をコピーして貼り付けることができます。
詳細がなければ、これ以上提供できることはありません。