สถานีที่มีการเดินทางเข้า-ออกมากที่สุดแบบมีน้ำหนัก
จนถึงตอนนี้ เราวิเคราะห์เครือข่ายโดยใช้ขอบที่ไม่มีน้ำหนัก แต่ในความเป็นจริง น้ำหนักของขอบคือจำนวนเที่ยวการเดินทาง ดังนั้นจึงสมเหตุสมผลที่จะขยายการวิเคราะห์ degree distribution โดยเพิ่มน้ำหนักเข้าไปด้วย เรื่องนี้มีความสำคัญ เพราะแม้ว่าสัดส่วน degree ที่สมดุลจะเป็นสิ่งจำเป็น แต่สิ่งที่ต้องปรับสมดุลจริง ๆ คือจำนวนจักรยาน หากน้ำหนักของทุกสถานีเท่ากัน การใช้ degree ratio แบบไม่มีน้ำหนักก็เพียงพอแล้ว แต่ถ้าต้องการทราบว่ามีจักรยานไหลผ่านจริง ๆ เท่าไหร่ ก็จำเป็นต้องพิจารณาน้ำหนักด้วย
ตัวแทนแบบมีน้ำหนักของ degree distribution คือ strength ซึ่งคำนวณได้ด้วยฟังก์ชัน strength() โดยฟังก์ชันนี้จะคืนค่า weighted degree distribution โดยอิงจาก attribute weight ของขอบในกราฟ
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
กรณีศึกษา: การวิเคราะห์เครือข่ายใน R
คำแนะนำการฝึกหัด
- สร้าง data frame ที่มีคอลัมน์ดังต่อไปนี้
trip_outควรเก็บค่า weighted degree (strength) แบบ"out"ของtrip_g_simptrip_inควรเก็บค่า weighted degree แบบ"in"ratioควรเก็บค่าสัดส่วนของ degree แบบ "out" หารด้วย degree แบบ "in"
- กรองข้อมูล
trip_strngเฉพาะแถวที่ทั้งtrip_outและtrip_inมีค่ามากกว่า10 - พล็อตฮิสโตแกรมของค่าสัดส่วนที่กรองแล้ว
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
trip_strng <- data_frame(
# Find the "out" strength distribution
trip_out = strength(___, mode = "___"),
# ... and the "in" strength distribution
trip_in = strength(___, mode = "in"),
# Calculate the ratio of out / in
ratio = ___ / trip_in
)
trip_strng_filtered <- trip_strng %>%
# Filter for rows where trips in and out are both over 10
filter(___ > 10, ___ > 10)
# Plot histogram of filtered ratios
hist(___$ratio)