問題タブ [edge-list]

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 に答える
136 参照

r - Rを使用して元の行の順序を維持しながら、一意の二重レコードを行ごとに抽出する方法は?

オリジナル(以下の更新を参照)

私は R の初心者で、現在、次の表現で 32 列と約 200.000 行のエッジ リストの形でコラボレーション データを扱っています。

A、B、Cは出版参加研究機関の国を表す。実際のデータセットの "A" は、たとえば "England" や "China" などの国名です。

一意のレコード (A) とダブル レコード (AA) を保持したいが、トリプレット (AAA) と同じレコードが連続して出現するのを削除したい。コラボレーションは ID によってパブリケーションに割り当てられるため、後で分析できるように順序を同じにする必要があります。ただし、行内の順序は関係ありません。

したがって、最終的にはこのようになります。

これまでのところ、 123に基づいて、タプル パッケージtriplicatedからいくつかのことを試しました。

ただし、行dt[!(triplicated(dt) | triplicated(dt, fromLast= TRUE)), ]ごとに余剰を示す特定のレコードを削除するだけでなく、次の 4x4 テーブルにつながる行全体を削除します...

ここここdplyrの回答も見ましたが、これまでに適切なアプローチを見つけることができませんでした。

元の問題の説明の実用的な解決策

Edit1: 明確化のために説明を調整: 実際のデータセットでは、"A" は、たとえば "England" や "China" などの国名です。

Edit2: より正確な再現可能な例を追加します。

アップデート

より正確で再現可能な例を追加し、元の問題の説明に正しい回答を組み込みました (以下を参照)。

目指す成果

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

r - データ フレームからのエッジリストの作成

試合のイベントを含むデータ フレームからエッジリストを作成しようとしています。データ フレームの各行は、敵チームのプレイヤーに対するキルです。Playerid列は殺した人を示します。アシストは、この特定のキルをアシストした人物を示します。ID 1 ~ 5 はチーム 1 に属し、6 ~ 10 はチーム 2 に属します。最初の列には行 ID が含まれます。

必要なのは、これをエッジリストに変換し、後で有向ネットワークに変換することです。これにより、インディグリー、アウトディグリーなどを計算できます。さらに、各プレイヤー間でどれだけのやり取りがあったかを知る必要がありますが、これは価値ある有向ネットワークで確認できるはずです。ただし、これをエッジリストに変換する際に問題があります。オンラインで解決策を探してみましたが、エッジリストに変換された同様のデータセットを見つけることができませんでした。誰かが私を助けてくれたら、とても感謝しています。