เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

เครือข่ายจาก Forrest Gump

ในบทนี้จะใช้เครือข่ายสังคมที่สร้างจากภาพยนตร์เรื่อง Forrest Gump โดยแต่ละ edge แทนความสัมพันธ์ระหว่างตัวละครสองตัวที่ปรากฏในฉากเดียวกันอย่างน้อยหนึ่งครั้ง ดังนั้นเครือข่ายนี้จึงเป็นแบบไม่มีทิศทาง (undirected) เพื่อทำความคุ้นเคยกับเครือข่าย จะเริ่มจากการสร้าง network object จากชุดข้อมูลดิบ จากนั้นจะระบุ vertex ที่สำคัญโดยใช้ค่าที่เรียกว่า eigenvector centrality ซึ่งตัวละครที่มีค่านี้สูงหมายความว่ามีการเชื่อมต่อกับตัวละครอื่นที่มีการเชื่อมต่อสูงเช่นกัน และสุดท้ายจะสร้างภาพแสดงผลเครือข่ายเพื่อสำรวจข้อมูลเบื้องต้น

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การวิเคราะห์เครือข่ายใน R

ดูคอร์ส

คำแนะนำการฝึกหัด

  • ตรวจสอบแถวแรก ๆ ของ dataframe gump โดยใช้ head()
  • สร้างเครือข่ายแบบไม่มีทิศทางโดยใช้ graph_from_data_frame()
  • ระบุ vertex ที่สำคัญโดยใช้ฟังก์ชัน eigen_centrality() แล้วกำหนดผลลัพธ์ให้กับออบเจกต์ g.ec จากนั้นระบุว่าตัวละครใดมีค่า eigenvector centrality สูงสุดโดยใช้ which.max() โดยค่าคะแนน centrality จะถูกเก็บไว้ใน g.ec$vector
  • สร้างกราฟของเครือข่าย Forrest Gump โดยใช้ plot() และกำหนดขนาดของ vertex ให้เท่ากับ 25 เท่าของค่า eigenvector centrality ที่เก็บอยู่ใน g.ec$vector

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

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"
)
แก้ไขและรันโค้ด