問題タブ [cross-product]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
62 参照

bash - AWK で同じ外積値を持つレコードを削除する

コマンドを使用して file.txt > file2.txt のレコードの外積を行う場合:

join file1.txt{,} -j999 > file2.txt

次のような file1.txt のすべてのレコードを含む file1.txt の各レコードを取得します。

サンプル データセット

私は得る

r1 r1、r2 r2、レコードなどは必要ありません...

クロス積を実行しているときに可能であれば、期待される結果を得るにはどうすればよいですか? そうでない場合、結合 file1.txt{,} -j 999 の処理後にレコードを削除するにはどうすればよいですか

私は別の awk コマンドでこれを試しました:

各レコードのシリアル番号が 1,2,3,... であるため、次のように file2.txt があります。

単純にシリアル番号を比較し、それらが等しくない場合はそれらのレコードを印刷します。しかし、次のような望ましくない結果が得られます。

$1!=$13 より前のすべてのレコードをスキップしていることがわかります。したがって、次のような行がありません。

パターン r1 r1、r2 r2、... にあるレコードのみをスキップする必要があります。

アップデート

画像

1列目と13列目はシリアルナンバーです。

0 投票する
2 に答える
1379 参照

python - einsum との外積

多くの 3x1 ベクトル ペアの外積をできるだけ速く計算しようとしています。これ

は正しい答えを与えますが、同様の質問に対するこの答えに動機付けられて、私はそれeinsumが私をどこかに連れて行くと思いました. 両方あることが分かった

外積を計算しますが、そのパフォーマンスは期待外れです: どちらの方法も よりもはるかに悪いパフォーマンスを発揮しますnp.cross:

sを改善する方法についてのアイデアはありますeinsumか?

0 投票する
2 に答える
125 参照

r - 外積の反対: 2 つの行列の交点から新しい行列を作成する方法は?

R に 2 つのテーブル (女性と男性) があり、存在と不在のデータがあります。各ペア間で共有されていないセルの数を見つけるために、それらの間でペアごとの比較を行いたいと思います(つまり、セルの合計は女性では1に等しく、男性ではなく、その逆) .

外積 (%*%) は、私が必要としているものとは反対のことを知っています。これは、男性と女性のペア間で共有されるセルの合計を含む新しい行列を作成します (つまり、両方のセルの合計が 1 に等しい)。

データセットの例を次に示します。

したがって、外積を計算すると

私はこれを得る

しかし、私はこれが必要です(最初の行のみが表示されています)

実際には、私のデータセットは対称的ではありません (47 人の女性と 32 人の男性がいます)。

助けてくれてありがとう!!!

0 投票する
0 に答える
421 参照

r - 2 セットの ID からエッジリスト/隣接マトリックスを作成する最も効率的な方法は何ですか?

これらの質問12に触発されました。私はadata.tableをオブジェクトに変えようとしadjacency matrix/edgelistていigraphます。ペアリングの目的で使用される 2 つの列 ( AB) を持つデータセットがあります。IDsつまり、Aは を表し、または 頂点linksB含みます。nodes私のデータセットでは、各列の一意の長さは 25352x75352です。adjacency matrixこれらは大きなネットワークを作成するため、かを取得する最も効率的な方法を見つけようとしていますedgelist。これまでにこれらの方法を試しました:

更新 1: @Axeman の次のコメント

結果 1

mergeインはより高速です。(fn4)アイデアや提案は非常に高く評価されます。

警告:

fn4とはより高速で、のにfn6依存し、重複した接続を作成します。さらに、接続されていないすべての頂点がグラフから削除されるため、これも誤解を招く可能性があります。cartesian productmergetemp$B.x != temp$B.y

更新 2: 重複を修正し、切断されたノードを説明します。

結果 2