問題タブ [network-analysis]
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.
r - R を使用してランダム グラフのカットとブリッジを特定する
ランダム グラフを生成するこのコードがあります。グラフ内のブリッジとカットを識別するにはどうすればよいですか
r - RのiGraphでノード/頂点の不透明度を変更する
プロットすると、多数のノードが重複するネットワークがあります。色の不透明度を変更して、ノードが重なっているときに他のノードの下にあるノードを見ることができるようにします。例として、このビデオを参照してください: https://vimeo.com/52390053
私はiGraph自分のプロットに使用しています。コードの簡略化された宣伝文句は次のとおりです。
iGraphただし、ノードの色の不透明度を変更するオプションが見つかりません。
どうすればこれを行うことができるでしょうか?のようなものかと思いましV(g)$alpha <- 0.8たが、これは何もしません。
python - 油圧回路を効率的にマッピングするには?
私は、油圧回路をモデル化するための Python-3 パッケージを作成することを目標とするプロジェクトを開始しました。これまでのところ、結果は有望ですが、もう少し難しいと思われる問題に直面しました:未知の複雑さのネットワークですべての並列経路をマッピングし、それを効率的に行うにはどうすればよいでしょうか? これはネットワーク分析における既知の問題であり、サードパーティの高度なソリューションが利用可能であると確信していますが、私はプログラマーとしての経験があまりないため、それほど複雑ではないソリューションを探しています。
そのため、パッケージには、コンポーネントとシステムの 2 つのモジュールが含まれています。system-module では、Circuit クラスと Crawler クラスを使用しています。後者には、Circuit オブジェクトを分析するためのメソッドが必要です。
Circuit クラスには、指定されたデータからコンポーネント オブジェクトのインスタンスのリストを作成するメソッドと、接続属性を操作してオブジェクトをリンクするメソッドがあります。したがって、Circuit.comp_list 内のすべてのコンポーネントには、それ自体の「内」および「外」へのポインターがあります。ノードには、回路が分岐または再結合する場所で、それ自体の "in" および/または "out" の 2 つ以上のポインターがあります。ポインターは、回路内の他の名前付きコンポーネントへのリンクを提供する短い名前 (文字列値) です。例: 名前付き Pipe オブジェクトへの 2 つのポインター「アウト」を持つ Node.connections 属性:
これまでのところ、回路をランダムにクロールし、分岐が見つかったときに新しいレベルを辞書に追加することを考えてきました。しかし、これをプログラムで解決する方法がよくわかりません。1 つのランダムなコンポーネントから始めて、ルートと並行経路のマップを作成しながらリンクをたどることができるはずだと思います。このマップは、後で回路をポンプと一致させるときに、回路内の総抵抗を計算するために使用されます。リクエストに応じて、より多くのコードを提供します。
r - 大規模隣接行列の生成
csv から隣接行列を生成しようとしています。
csv には、ユーザー用とプロジェクト用の 2 つの列が含まれています。2 つの列は 2 部グラフを形成し、各ユーザーは複数のプロジェクトの一部になることも、まったく含まれないこともありますが、同じセットのノード間にエッジはありません (同じユーザー プロジェクト ペアの繰り返しエントリはありませんが、繰り返しエントリがあります)。ペアの組み合わせが異なる同じユーザーまたはプロジェクトの)。
Matlab と ismember(a,b) を使用して、各ユーザーのプロジェクトをプロジェクト セット全体と比較するための比較を作成しました。アルゴリズムは、各エントリに対して反復的に実行されます。最終的に、サイズ M(|users| + |user|) x (|users| + |user|) の隣接行列ができました。
エントリ数が 15000 未満の場合は高速に動作しますが、+15000 のサンプルの場合は Matlab が停止します。隣接行列をゼロ行列 (zero(r,c)) で初期化し、行ごとに ismember(a,b) の結果を追加します。しかし、私のMatlabでは、ゼロ行列 zero(15000,15000) はメモリをほとんど使い果たします。R でそのサイズ (matrix(0, 15000, 15000)) のゼロ行列も作成しようとしましたが、R のメモリも最大になります。
これを回避する方法はありますか?私の完全なサンプル サイズは 597,000 行 (~70,000 人のユーザーと ~35,000 のプロジェクト) で、ネットワーク分析を実行したいと考えています。
また、結果に対して実行したい最大カット最小フローアルゴリズムがあり、マトリックスでのみ機能するため、隣接リストではなくマトリックス形式で保持したいと考えています。
更新しました:
データはこんな感じ
ノートルダム大学の Zerlot を使用して SourceForge から取得されます。各 int 値は SQL データベースのキーです。この所属データを、ユーザー間の各エッジが共有プロジェクトであるワンモードのユーザー間隣接マトリックスに変換したいと考えています。
r - igraph r-package で地理座標を頂点座標として使用する
R の igraph パッケージでは、グラフのレイアウトとして緯度/経度の座標を使用してソーシャル ネットワークをプロットするのに苦労しています。
次の簡単な例を想像してみてください: 地理的な場所と接続がわかっている 4 つのノードを持つネットワーク:
ここにはノードのメタデータがあり、Bob はニューヨークに、Klaus はベルリンに、Edith はパリに、Liu は北京に住んでいます。
g を igraph オブジェクトにします...
...そして、レイアウトを経度/緯度座標として定義します
これらの (実際の) 地理座標を使用してこの例を実行すると、位置が互いに相対的であるという意味で「比較的」正確であることがわかります。ただし、このように多くの座標をプロットすると、世界のデカルト マップが「引き伸ばされた」ように見えます。
座標が 100% 正しく、ノード間の接続を確認できるように、ノードを世界地図上に実際にプロットする方法はありますか? ノード間のリンクを分析したいときに後で必要になる可能性のある多くの機能を提供する igraph パッケージを使い続けたいと思っています。
wireshark - tshark - tshark 1.6.7 フィールド名の検索を支援
pcap を txt に変換し、特定のフィールドを表示しようとしています。
thsark 1.12.4 では次のように動作します:
tshark -nr "input_file.pcap" -E header=y -e frame.number -e frame.time -e ip.src -e ip.dst -e _ws.col.Protocol -e _ws.col.Info -e データ-T フィールド -V "tcp または udp" > "output_file.txt"
悲しいことに、tshark 1.6.7 (これは強制的なものです) では、プロトコルと情報の列が表示されません。
オンラインで見つけられるすべての組み合わせを試しました: _ws.col.Info、_ws.col.info、col.Info、col.info、Info、info。
他に何も見つかりませんでした。
これらの列を出力txtファイルに表示する方法について何か提案はありますか?
一番。