IDの頂点で名前を取得したい場合は、この関数を使用できます:VAS(g, "name",id)
逆の方法で名前を取得するにはどうしたらいいですか?IDの頂点を名前で取得する方法は?
答えて
IGRAPHは、独自に、名前で頂点を検索するための手段を提供し、正当な理由はありません - 名前からIDへのマッピングは、IDからのマッピングよりも困難な問題である名前に、あります単純な配列検索操作です。すべての頂点を反復して一致する頂点で停止することはできますが、これは大きなグラフ(頂点の数ではO(n))では非効率的です。より速い方法は@ Jascの答えにdict
のような何らかの連想配列データ構造を使用し、その名前をキーとIDの値として値として使用することです。 (このインデックスを変更すると、このインデックスをグラフと同期させておく必要があります)。C自体または標準のCライブラリにはこのようなデータ構造はありませんが、利用可能な実装が多数あります。例えば、GHash structure glib。
+1;これはまさに私がigraphの著者の一人として書いたと思います。私はigraphのデフォルトの属性ハンドラを置き換えることが可能であるため、igraphのデフォルトの属性処理メカニズムを理論的に拡張することができるため、名前のIDへの逆マッピングを自動的に維持することができます。しかし、これはコアライブラリに実装されていません。 –
あなたのコメントをありがとう、私はそれを試してみましょう – user1310873
私はigrahのウェブサイトまたはメーリングリストで次を見つけました。
g = igraph.Graph(0, directed=True)
g.add_vertices(2)
g.vs[0]["name"] = "Bob"
g.vs[1]["name"] = "Bill"
# build a dict for all vertices to lookup ids by name
name2id = dict((v, k) for k, v in enumerate(g.vs["name"]))
# access specific vertices like this:
id_bob = name2id["Bob"]
print(g.vs[id_bob]["name"])
これはPythonのように見えますが、元のポスターは "C"または "C++"という質問にタグ付けされています – gcbenison
- 1. RとIgraphの名前頂点からID頂点を取得する方法は?
- 2. データストア - ID /名前値の取得方法
- 3. sqlのidでグループから名前を取得する方法
- 4. Google DataStore - ID /名前でデータを取得する方法
- 5. igraphの名前変更の頂点
- 6. Pythonスレッド - 親ID /名前を取得する方法
- 7. 文書 - タグの名前を名前で取得する方法
- 8. 頂点の頂点を頂点で4.2で検証する
- 9. 名前で語彙IDを取得
- 10. GLSLのフラグメントシェーダでフラグメントの最初の頂点ノーマルを取得する方法
- 11. three.jsの頂点の絶対位置を取得する方法は?
- 12. VTKでデシメーションした後に一定数の頂点を取得する方法
- 13. Boost :: Dijkstra最短パス、パスイテレータから頂点インデックスを取得する方法は?
- 14. CGAL 2D Delaunay三角形分割:頂点のIDのペアとしてエッジを取得する方法
- 15. 内部名またはIDでコンテンツタイプを取得する方法
- 16. ページソースでIDまたはタグ名を取得する方法
- 17. VB.NET〜httpwebrequest - httpwebrequestの間にフォーム要素のID /名前を取得する方法
- 18. アンドロイドでアプリケーションの名前を取得する方法は?
- 19. log4netログファイルの名前パターンをプログラムで取得する方法は?
- 20. XMPPアプリケーションでWebブラウザの名前を取得する方法は?
- 21. .NETでワークシートを名前で取得する方法は?
- 22. Jquery Tokeninput IDの代わりに名前を取得する方法
- 23. Sqliteは一意の名前でIDを取得します
- 24. フレーム内のIDを頂点名と照合して頂点にラベルを追加しますか?
- 25. シェーダから頂点宣言を読み取る方法は?
- 26. VBA点心の名前を取得し、インデックスでは、Array
- 27. 画像の名前の取得方法
- 28. 現在のレイアウトの名前を取得する方法は?
- 29. 実行中のアプリケーションの名前を取得する方法は?
- 30. 構造/テンプレート名で構造/テンプレートIDを取得する方法
私は決して 'igraph'を使ったことはありませんが、もう誰も答えていないので、ドキュメンテーションの素早い確認の後、私は' VAS'がドキュメント内の頂点の属性を検索しますグラフ。あなたの質問は、特定の属性の特定の値を持つ頂点(または頂点)のIDを見つける方法であれば、グラフのすべての頂点を反復処理し、属性をチェックして一致する頂点のリストを累積することができます基準。 –