重要な共同作業者を見つける
もう少しで完了です!ここでもう一度、重要なノードに注目します。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)