始める無料で始める

フォレスト・ガンプのネットワーク

この章では、映画「フォレスト・ガンプ」を題材にしたソーシャルネットワークを使います。各エッジは、2人の登場人物が少なくとも1つのシーンで一緒に登場したことを示します。そのため、このネットワークは無向グラフです。まずはネットワークに慣れるために、生データセットからネットワークオブジェクトを作成します。次に、固有ベクトル中心性と呼ばれる指標を使って、重要な頂点を特定します。固有ベクトル中心性が高い個人は、他の「よくつながっている個人」と強くつながっている人たちです。最後に、このネットワークの探索的な可視化を行います。

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

Rで学ぶネットワーク分析

コースを見る

演習の手順

  • head() を使ってデータフレーム gump の先頭数行を確認します。
  • graph_from_data_frame() を使って無向ネットワークを作成します。
  • eigen_centrality() で主要な頂点を特定し、その結果をオブジェクト g.ec に代入します。次に、which.max() を使って最も高い固有ベクトル中心性を持つ個人を特定します。中心性スコアの値は g.ec$vector に保存されています。
  • plot() を使ってフォレスト・ガンプのネットワークを描画します。頂点のサイズは、g.ec$vector に保存されている固有ベクトル中心性の値の25倍に設定します。

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

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

library(igraph)

# Inspect Forrest Gump Movie dataset
head(gump)

# Make an undirected network
g <- ___(gump, directed = FALSE)

# Identify key nodes using eigenvector centrality
g.ec <- ___(g)
___(g.ec$vector)

# Plot Forrest Gump Network
plot(g,
vertex.label.color = "black", 
vertex.label.cex = 0.6,
vertex.size = 25*(___),
edge.color = 'gray88',
main = "Forrest Gump Network"
)
コードを編集して実行