0

特定のグラフで次の計算を何度も実行しています。接続されたコンポーネントを取得し、作成者を中間性で並べ替えます。

Ordered_authors = sorted(Author_graph.vs.select(コンポーネント)、キー = ラムダ x:x.betweenness()、リバース = True)

私の基本的な質問は次のとおりです。「igraph は、こ​​の計算を行うたびに頂点 x の媒介性を計算しますか?または、グラフ全体の媒介性リスト全体を既に計算したとします。次に、igraph はこれらの局所的な処理を行うためにそのリストを参照しますか?計算?

答えによっては、このローカル計算が実行中のより大きなプログラムのボトルネックになる (またはならない) ことになります。

4

1 に答える 1

3

はい、これにより、この計算を行うたびに中間性が計算されます。より良い方法は、すべての頂点の中間性を事前に計算することです。

scores = Author_graph.betweenness()
ordered_authors = sorted(Author_graph.vs.select(component), key = lambda x: scores[x.index], reverse=True)
于 2013-02-16T17:45:54.113 に答える