リストに基づいて表の列をフィルタリングするこんにちは、みんな、
JMP Pro を使ってスクリプトを実行したことはありませんが、しばらくの間 JMP Pro を使用しています。 また、さまざまなプラットフォームを使用してかなりの量の「オミクス」分析を行っているため、JMP Genomics についても調査しています。 今のところ、私は JMP Pro の世界にいて、データ テーブルをフィルター処理する方法を見つけようとしています。
私が理解できないことの1つは、リスト(列名を含む)またはテストの結果に基づいてテーブルをフィルタリングする(または新しいテーブルを作成する)方法です。 たとえば、600 行 x 10,000 列の幅の広いテーブル (テーブル 1) があります。 表 1 (200 列名) の列 ID の単一列を持つ別の表 (表 2) があります。
次の方法はありますか?
- 表 2 の列 ID に基づいて、表 1 の列グループを作成しますか?
- または、表 2 の列 ID に基づいて、表 1 のサブセットを作成しますか?
これらのいずれかが私のワークフローに役立つと思いますが、ここのフォーラムまたはヘルプ ガイド内で解決策を見つけることができませんでした。
前もって感謝します!
ジョナサン
Re: リストに基づいてテーブルの列をフィルタリングする素晴らしい! これについて説明してくれてありがとう。 非常に役立ちます!Re: リストに基づいてテーブルの列をフィルタリングする私のテストから、リストは作成されていると思いますが、列の数が多すぎて失われています。そのため、コードに簡単な変更を加えて、リストの名前を追加し、リストを列のリストの先頭に移動するように指示しました。
names default to here(1);
dt = Current Data Table();
dtSingle = open ("TCAlist.jmp");
//longList=dt<<GET column="" names=""></GET>Re: リストに基づいてテーブルの列をフィルタリングするRe: リストに基づいてテーブルの列をフィルタリングする2 つのデータ テーブルを添付していただければ、問題を確認します
Re: リストに基づいてテーブルの列をフィルタリングするしたがって、表示されるメッセージ/エラーはありません。 列のスペルは正しく、大文字と小文字の問題はありません。 これを実行すると、スクリプトの 2 番目の部分が機能し、「TCAlist」にリストされた 3 つの項目を含むサブセットが作成されます。 起こらない唯一のことは、メイン テーブルでのグループの作成です。 テーブルに関する最初の数行に何か問題がありますか? 現在のデータ テーブルはこれを無効にしますか?Re: リストに基づいてテーブルの列をフィルタリングするログにはどのようなメッセージがありますか? 列のスペルはすべて正しいですか? 大文字/小文字の問題はありますか???Re: リストに基づいてテーブルの列をフィルタリングするありがとうジム!
「サブセットの作成」スクリプトを 2 つのデータ テーブルで動作させることができましたが、同じ 2 つのテーブルで「グループの作成」を行っても、メイン テーブルにグループが作成されないようです。 ただし、サンプルデータの例では問題なく動作します。 おそらく明らかな何かが欠けています:)ご協力いただきありがとうございます!
names default to here(1);
dt = Current Data Table();
dtSingle = Open ("TCAlist.jmp");
// Create a group
theList = dtSingle:Cols << get values;
dt << group columns(theList);
// Create a subset
// Select columns in data table dt, that are in dtSingle
try( dt << Select Columns( dtSingle:Cols << get values ));
dtSubset = dt << subset( selected rows(0), selected columns(1) );Re: リストに基づいてテーブルの列をフィルタリングする指定した両方のリクエストを表示する簡単なスクリプトを次に示します。
names default to here(1);
dt=open("$SAMPLE_DATA/semiconductor capability.jmp");
dtSingle = New Table("Single Column", new column("Cols", character,values({"PNP2","NPN3","INM1"})));
// Create a group
theList = dtSingle:Cols << get values;
dt << group columns( theList);
// Create a subset
// Select columns in data table dt, that are in dtSingle
try( dt << Select Columns( dtSingle:Cols << get values ));
dtSubset = dt << subset( selected rows(0), selected columns(1) );