始める無料で始める

重要な共同作業者を見つける

もう少しで完了です!ここでもう一度、重要なノードに注目します。NetworkX の degree_centrality()betweenness_centrality() を使ってそれぞれの中心性スコアを計算し、その情報から「重要なノード」を見つけます。つまり、この演習では、最も多くのユーザーと共同作業しているユーザーを特定するのが目標です。

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

Pythonで学ぶネットワーク分析入門

コースを見る

演習の手順

  • G の次数中心性を計算し、deg_cent に保存します。
  • 最大の次数中心性を計算します。deg_cent は辞書なので、まず .values() メソッドで値のリストを取り出し、max() で最大値を求めます。
  • リスト内包表記で最も活発な共同作業者を特定します。
    • 先ほど計算した次数中心性の辞書 deg_cent.items() で反復します。最も多くのユーザーと共同作業しているユーザーを見つけるには、どの条件を満たせばよいでしょうか?ヒント:最大の次数中心性に関係があります。
  • "Submit Answer" を押して、最も活発な共同作業者が誰かを確認しましょう!

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

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

# Compute the degree centralities of G: deg_cent
deg_cent = ____

# Compute the maximum degree centrality: max_dc
max_dc = ____

# Find the user(s) that have collaborated the most: prolific_collaborators
prolific_collaborators = [n for n, dc in ____ if ____ == ____]

# Print the most prolific collaborator(s)
print(prolific_collaborators)
コードを編集して実行