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

ระยะทางระหว่างจุดยอด

การเชื่อมต่อภายในเครือข่ายสามารถประเมินได้โดยการตรวจสอบจำนวนและความยาวของเส้นทางระหว่างจุดยอด เส้นทางคือลำดับการเชื่อมต่อระหว่างจุดยอด จำนวนเส้นเชื่อมที่คั่นกลางระหว่างจุดยอดสองจุดเรียกว่าระยะทางจีโอเดสิก (geodesic distance) จุดยอดที่เชื่อมต่อถึงกันโดยตรงมีระยะทางจีโอเดสิกเท่ากับ 1 ส่วนจุดยอดที่มีเพื่อนบ้านร่วมกันแต่ไม่ได้เชื่อมต่อโดยตรงมีระยะทางเท่ากับ 2 และเป็นเช่นนี้ต่อไป สำหรับเครือข่ายแบบมีทิศทาง สามารถนำทิศทางของเส้นเชื่อมมาพิจารณาด้วย หากไม่สามารถเดินทางถึงกันโดยทำตามทิศทางของเส้นเชื่อม ระยะทางจีโอเดสิกจะถูกกำหนดเป็นอนันต์ ในแบบฝึกหัดนี้ จะได้เรียนรู้วิธีหาเส้นทางที่ยาวที่สุดระหว่างจุดยอดในเครือข่าย และวิธีระบุจุดยอดที่อยู่ภายใน \(n\) การเชื่อมต่อจากจุดยอดที่กำหนด สำหรับเครือข่ายการแพร่กระจายโรค เช่น ชุดข้อมูลหัดเยอรมัน สิ่งนี้ช่วยให้เข้าใจว่าโรคแพร่กระจายผ่านเครือข่ายได้รวดเร็วเพียงใด

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

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

ดูคอร์ส

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

  • หาความยาวของเส้นทางที่ยาวที่สุดในเครือข่ายโดยใช้ farthest_vertices()
  • ระบุลำดับของเส้นทางโดยใช้ get_diameter() ซึ่งแสดงให้เห็นว่าเด็กคนใดบ้างที่ส่งต่อโรคได้ไกลที่สุดในเครือข่าย
  • ใช้ ego() เพื่อหาจุดยอดทั้งหมดที่เข้าถึงได้ภายใน 2 การเชื่อมต่อจากจุดยอด 42 และจุดยอดที่สามารถเข้าถึงจุดยอด 42 ได้ภายใน 2 การเชื่อมต่อ โดยอาร์กิวเมนต์แรกของ ego() คือออบเจกต์กราฟ อาร์กิวเมนต์ที่สองคือจำนวนการเชื่อมต่อสูงสุดระหว่างจุดยอด อาร์กิวเมนต์ที่สามคือจุดยอดที่สนใจ และอาร์กิวเมนต์ที่สี่กำหนดว่าต้องการพิจารณาการเชื่อมต่อที่ออกจากหรือเข้าสู่จุดยอดที่สนใจ

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

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

library(igraph)

# Which two vertices are the furthest apart in the graph ?
___(g) 

# Shows the path sequence between two furthest apart vertices.
___(g)  

# Identify vertices that are reachable within two connections from vertex 42
___(g, ___, '42', mode = c('___'))

# Identify vertices that can reach vertex 42 within two connections
___(g, ___, '42', mode = c('___'))
แก้ไขและรันโค้ด