始める無料で始める

次数中心性が高いノードを見つける

この演習では、ネットワーク内でもっともつながりの多い学生に、どのような特徴があるかを詳しく見ていきます。まずは、次数中心性が最も高い学生のクラスターを特定します。この結果は、次の可視化演習で利用します。

この演習はコースの一部です

Python 中級ネットワーク解析

コースを見る

演習の手順

  • 上位 5 つの「ユニークな」次数中心性スコアを取得します。これには sorted() 関数を使います。第 1 引数には G の次数中心性値の「set」(ユニークな値にするため)を渡し、第 2 引数には降順に並べ替えるため reverse=True を渡します。上位 5 件に絞るには、文末に適切なスライスを追加してください。返された次数中心性の結果には .values() を使うことも忘れないでください。
  • 上位 5 つの全体次数中心性を持つノードのリストを作成します。次を行います。
    • nx.degree_centrality(G).items() メソッドを使って、次数中心性スコアの辞書を反復処理します。
    • dctop_dcs に含まれている場合は、ノード ntop_connected リストに追加します。
  • 上位 5 つの次数中心性スコア(top_connected)を共有するノード数を、len() を使って出力します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Get the top 5 unique degree centrality scores: top_dcs
top_dcs = ____(set(____), reverse=True)[____:____]

# Create list of nodes that have the top 5 highest overall degree centralities
top_connected = []
for n, dc in ____:
    if ____ in ____:
        ____
        
# Print the number of nodes that share the top 5 degree centrality scores
print(____)
コードを編集して実行