2 つの同一のテーブル間の差を計算するにはどうすればよいでしょうか?こんにちは、
2 つの異なる時点のテスト結果の同一の表が 2 つあります。
それぞれのケースの差を計算できる簡単な関数はありますか?
データのブレンドとクリーンアップ品質およびプロセスエンジニアリングRe: 2 つの同一のテーブル間の差を計算するにはどうすればよいでしょうか?ここでの「同一」とはどういう意味でしょうか(同一のテーブルでは差異は0になるのでしょうか?)。列名は同じですか?結果はどこに保存すればよいですか?「各ケース」、つまり列の差異とは何ですか?
Re: 2 つの同一のテーブル間の差を計算するにはどうすればよいでしょうか?こんにちは、
ご返信ありがとうございます。
列と行のラベルは同じです。値は異なります。各セルのドリフトを計算したいのですが(申し訳ありませんが、すべてのケースではありません)。
Re: 2 つの同一のテーブル間の差を計算するにはどうすればよいでしょうか?結果がどこで計算されるかわからないので、結果を含む新しいテーブルを作成する非常に簡単なプロセスを紹介します。
行番号を使用してテーブルを結合する

列をペアで選択して数式を作成します

そして、結果の列は数式として表示されるはずです

Re: 2 つの同一のテーブル間の差を計算するにはどうすればよいでしょうか?テーブルがすべて数値の場合は、データ テーブルの添字を使用して 1 組の行列を作成し、それらを減算して、新しいテーブルに書き戻すことができます。
もう少し作業すれば、数値列だけを選択して同じことを行うことができます。Re: 2 つの同一のテーブル間の差を計算するにはどうすればよいでしょうか?これはデータテーブルの添え字を使用して新しいテーブルを作成するというアイデアです
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dt2 = Open("$SAMPLE_DATA/Big Class Families.jmp");
dt2 << Sort(By(:sports),Replace Table,Order(Ascending),Copy formula(0)); // demo purposes
If(N Rows(dt) != N Rows(dt),
Throw("Rows do not match");
);
cont_cols1 = dt << Get Column Names(Continuous, "String");
cont_cols2 = dt2 << Get Column Names(Continuous, "String");
If(cont_cols1 != cont_cols2,
Throw("Columns do not match");
);
res = dt[0, cont_cols1] - dt2[0, cont_cols2];
dt_res = As Table(res);
For Each({colname, idx}, cont_cols1,
Column(dt_res, idx) << Set Name(colname);
);
Re: 2 つの同一のテーブル間の差を計算するにはどうすればよいでしょうか?これは、列名と行数が同一の 2 つの同一の数値テーブルを取得し、その 2 つのテーブルの差となる新しいテーブルを作成する簡単なスクリプトです。
names default to here(1);
dt1 = data table("name of first table");
dt2 = data table("name of second table");
// Create a new table from one of the 2 tables
dt3 = dt1 << subset( selected rows(0), selected columns(0));
// Replace cell values in the third data table with the
// differences between table 1 and table 2
dt3[0,0] = dt1[0,0]-dt2[0,0];
Re: 2 つの同一のテーブル間の差を計算するにはどうすればよいでしょうか?ご協力ありがとうございます。うまくいきました。