多対一構造の JMP テーブルをアンスタックする方法こんにちは、
JMP に次の「積み重ねられた」データ テーブルがあります。
| テストID | サンプルタイプ | 結果 |
| テスト_ID_1 | サンプル | 10 |
| テスト_ID_1 | サンプル | 12 |
| テスト_ID_1 | サンプル | 11 |
| テスト_ID_1 | サンプル | 14 |
| テスト_ID_1 | サンプル | 9 |
| テスト_ID_1 | コントロール | 11 |
| テスト_ID_2 | サンプル | 9 |
| テスト_ID_2 | サンプル | 8 |
| テスト_ID_2 | サンプル | 10 |
| テスト_ID_2 | コントロール | 14 |
| テスト_ID_3 | サンプル | 13 |
| テスト_ID_3 | コントロール | 15 |
| テスト_ID_4 | サンプル | 9 |
| テスト_ID_4 | サンプル | 7 |
| テスト_ID_4 | コントロール | 12 |
上記の表をアンスタックして次の表を生成したいと思います。
| テストID | サンプルタイプ = サンプル | サンプルタイプ = コントロール |
| テスト_ID_1 | 10 | 11 |
| テスト_ID_1 | 12 | 11 |
| テスト_ID_1 | 11 | 11 |
| テスト_ID_1 | 14 | 11 |
| テスト_ID_1 | 9 | 11 |
| テスト_ID_2 | 9 | 14 |
| テスト_ID_2 | 8 | 14 |
| テスト_ID_2 | 10 | 14 |
| テスト_ID_3 | 13 | 15 |
| テスト_ID_4 | 9 | 12 |
| テスト_ID_4 | 7 | 12 |
スタックされたデータには、特定のコントロールのさまざまな数のサンプルが含まれています。サンプルとコントロールの間に 1 対 1 の相関関係がある場合もありますが、多くの場合、1 つのコントロールに対して多数のサンプルがあります。サンプルの数は 1 から n まで変化しますが、コントロールは常に 1 つだけです。私は JMP 16.0.1 を使用しています。
ありがとう、
ティム
高度な統計モデリング消費者および市場調査データのブレンドとクリーンアップマスカスタマイゼーションRe: 多対一構造の JMP テーブルをアンスタックする方法簡単なサンプル テーブルを必要な新しい形式に変換する小さなスクリプトを次に示します。いくつかのサブセットと Update を使用してタスクを実行します。
Names Default To Here( 1 );
dt = Current Data Table();
dt << select where( :Sample Type == "Sample" );
dtFinal = dt << subset(
selected rows( 1 ),
columns( {"Test ID", "Result"} ),
Output Table( "Final" )
);
dtFinal:Result << set name( "Sample Type = Sample" );
dt << invert row selection;
dtTemp = dt << subset( invisible,
selected rows( 1 ),
columns( {"Test ID", "Result"} )
);
dtTemp:Result << set name( "Sample Type = Control" );
dtFinal <<UPDATE></UPDATE>

Re: 多対一構造の JMP テーブルをアンスタックする方法グループ化列を作成することもできます
Col Cumulative Sum(1, :Test ID, :Sample Type)

それをSplitで使う


次に、コントロール列から1行を選択し、前の値を入力します

およびクリーンアップ (順序列の削除、列の並べ替え、必要に応じて名前の変更)

これはこの非常に単純なケースでは機能しますが、JMP の分割プラットフォームを使用するとデータが失われやすいため、注意してください (順序列はこれを防止しようとします)。