列のマッチングによる行列の結合<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />誰もがテーブルを結合するのと同じ方法でマトリックスを結合するための洗練されたスクリプトを持っていますか?
宜しくお願いします
ロン
列のマッチングによる行列の結合ありがとうございます。
なので、やっぱり古いテーブルコマンドに戻ってきたと思います。
列のマッチングによる行列の結合はい、これらすべての機能はマルチスレッド化する必要があります。
マルチスレッドはJSLではほとんどサポートされていません(これは大部分が良いことです)。 ただし、それがJMP自体に当てはまる場合、プログラムは非常に遅くなり、エンドユーザーには使用できません。 ほとんどの送信コマンド '<<'は、すべてではありませんが、JMP固有のマルチスレッドB / Cになる傾向があります。
質問がある場合は、単に関数をテストしてください。たとえば、タスクマネージャを開き、次のように実行します。
dt = 新しいテーブル ( "テスト" ) ;
dt << 新しいコラム ( "テスト" 、数値 、連続的 、値 ( 1 :: 100000000 )) ;
dt << 行を削除 ( 1 :: 100000000 ) ;
最も近い ( dt 、保存しない ) ;
これを実行すると、4つのプロセッサすべてがスパイクしているのがわかります。

列のマッチングによる行列の結合ありがとう msharp これは知っておくと便利です。
テーブルの要約はどうですか?複数行を削除しますか?複数の列を削除しますか?
ロン
列のマッチングによる行列の結合私の知る限りでは、JMPでの結合と他のいくつかのテーブル操作が唯一のマルチスレッド操作です。 テーブル結合の方がマトリックス結合よりも高速であることに、私は全力を尽くします。
列のマッチングによる行列の結合ごめんロン。私の答えは、マトリックス操作で「結合する」という特定のケースを早くすることができないということを意味するのではありません - おそらくそれは可能です。それは、( 'Tables> Join'のオプションが示すように)結合は '一つのこと'ではないということです、そして、私はあなたのケースの詳細を知りませんでした。
列のマッチングによる行列の結合ありがとうイアン@ JMP スクリプトとヒントのために。
私は、JMPの力が優れていて、マトリックスを使って粗いコマンドをスクリプトで書くよりもはるかに扱いやすいことに同意します。私の場合は、対話式インターフェースを使用して任意のステップで意図したとおりに動作していることをすばやく「ハンズオン」で確認できるので、時間も大幅に節約できます。
問題は、私が書いたスクリプトです。要約、結合、比較、行の削除、値の抽出など、すべてのプロセスでデータテーブルが使用されます。私はそれを行列に変換することでより速くすることを望んでいましたが、そうではないことに気付きました。
ロン
列のマッチングによる行列の結合ほほのほんのわずかな舌だけで、私は以下を提案しますか。それはひどいように思えるかもしれませんが、一方で、JMPにあなたのために仕事をさせるのはいつも良いことです。この場合、行列の世界で 'Join()'の柔軟性を再発明するにはある程度の努力が必要です。
NamesDefaultToHere ( 1 ) ;
//キー列 'c1'と 'c2'を使用して2つの行列 'm1'と 'm2'を結合します(すべての列は保持されます)
joinMatrices =
関数 ({ m1 、 c1 、 M2 、 c2 } 、 { デフォルトのローカル } 、
dt1 = AsTable ( m1 、 << 見えない ) ;
dt2 = AsTable ( M2 、 << 見えない ) ;
//好みに合わせて 'Join()'式を編集します。。。
dt3 = dt1 << 参加する (
あり ( dt2 ) 、
列を一致させる ( 「コル」 || チャー ( c1 ) = 「コル」 || チャー ( c2 ) ) 、
倍数をドロップ ( 0 、 0 ) 、
不一致を含める ( 0 、 0 ) 、
メインテーブルの順序を維持 ( 1 ) 、
見えない
) ;
立方メートル = dt3 << getAsMatrix ;
閉じる ( dt1 、 NoSave ) ;
閉じる ( dt2 、 NoSave ) ;
閉じる ( dt3 、 NoSave ) ;
立方メートル ;
) ;
//いくつかの行列を作る
n = 10年 ; // 行の数
m1 = ( 1 :: n ) `|| J ( n 、 n 、 10年 ) ;
M2 = ランダムシャッフル ( m1 [ 0 、 1 ]) || 身元 ( n ) ;
//機能をテストする
joinMatrices ( m1 、 1 、 M2 、 1 ) ;