重複した列を保持するやあ、
私は 2 つのデータ テーブルを持っています。これらのテーブルは、テスト パラメーター (同じ名前を共有する列のおそらく 30% を意味します) がテスト場所によって異なるため、テスト結果も異なるため、ある程度似ています。 Update を使用してこのテーブルを結合すると同時に、2 番目のテーブル列のデータを維持しますが、これらの列の名前を自動的に変更して、並べて表示できるようにします。 これはスクリプトを介して実行できますか。
ありがとう。
Re: 重複した列を保持するありがとう、ジム。 通常の状況ではそうです。変数が少ない場合、テーブルを問題なく結合できます。
Re: 重複した列を保持するジムのポイントを拡張するには、通常の結合のようにキーペアを持っていないように見えるため、行ごとに結合する必要があります。なぜこのようにテーブルに参加するのか理解に苦しむ。 SN AX0001 は STX0030 に関連していますが、STX0031 には関連していませんか?もしそうなら、より意味のある方法でそれらを結合するために両方のテーブルに追加できる別の列があるかもしれません.
Re: 重複した列を保持するあなたが求めているのは、2つのデータテーブルを結合するときにJMPで実行されるデフォルトのアクションです.両方のデータ テーブルに同じ名前の列がある場合、JMP は列の名前を変更します。これはスクリプト バージョンですが、テーブルが 2 つある場合は、インタラクティブにこれを行うことができます。
テーブル==>結合
Names Default To Here( 1 );
dt1 = Open( "$SAMPLE_DATA\big class.jmp" );
dt2 = Open( "$SAMPLE_DATA\big class Families.jmp" );
Data Table( "big class Families" ) << Join( With( Data Table( "big class" ) ),
By Row Number );
Re: 重複した列を保持するありがとうございます。 これはまさに私が望むものではありませんが、アイデアはそこにあります。 添付ファイルは私がやりたいことです.2つのデータテーブルを結合し、1番目のデータテーブルと一致する2番目のデータテーブルの列の名前を自動変更しました。 私の最初のメッセージから混乱が生じた場合は申し訳ありません。
Re: 重複した列を保持する何をしたいのか正確にはわかりませんが、はい、スクリプトを使用して列の名前を変更できます。各データ テーブルを開き、それぞれに別々の参照を保持している場合は、それらすべてにメッセージを送信して列の名前を変更できます。
Names default to here( 1 );
//Open two tables
dt1 = Open("$SAMPLE_DATA/Iris.jmp"); //first table
dt1 << Set Name( "Table 1" );
dt2 = Open("$SAMPLE_DATA/Iris.jmp"); //second table (different filename)
dt2 << Set Name( "Table 2" );
//Concatenate tables
dtJoined = dt1 << Concatenate( dt2 );
dtJoined << Set Name( "Combined" );
//Change column names
Column( dt1, "Sepal length" ) << Set Name( "Sepal_length" );
Column( dt2, "Sepal length" ) << Set Name( "Sepal_length" );
Column( dtJoined, "Sepal length" ) << Set Name( "Sepal_length" );多くの列名を変更する場合は、関数を使用して最後の 3 行を置き換えることができます。
//Make a function to change column names in all tables
ChangeAllNames = function({original, new},
Column( dt1, original ) << Set Name( new );
Column( dt2, original ) << Set Name( new );
Column( dtJoined, original ) << Set Name( new );
);
//Then call the function
ChangeAllNames( "Sepal width", "Sepal_width" );
ChangeAllNames( "Petal length", "Petal_Length" );