Degree Centrality ตามช่วงเวลา
ในแบบฝึกหัดนี้ จะได้พล็อตการกระจายตัวของ degree centrality ตามช่วงเวลา โดยฟังก์ชัน ECDF จะถูกเตรียมไว้ให้แล้ว ไม่ต้องเขียนขึ้นมาเอง
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การวิเคราะห์เครือข่ายระดับกลางใน Python
คำแนะนำการฝึกหัด
- สร้างรายการคะแนน degree centrality รายเดือน โดยทำดังนี้:
- ในแต่ละรอบของ
forloop แรก ให้คำนวณ degree centrality ของGโดยใช้ฟังก์ชันnx.degree_centrality()แล้วบันทึกผลลัพธ์ไว้ในตัวแปรcent - Append
centเข้าไปในรายการcents
- ในแต่ละรอบของ
- พล็อต ECDF ตามช่วงเวลา โดยทำดังนี้:
- วนซ้ำใน
range(len(cents))ด้วยforloop แล้วใช้ฟังก์ชันECDF()โดยส่งcents[i].values()เป็น argument จากนั้น unpack ผลลัพธ์ออกเป็นxและy - ส่ง
xและyเป็น argument ให้กับplt.plot()
- วนซ้ำใน
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Import necessary modules
import networkx as nx
import matplotlib.pyplot as plt
# Create a list of degree centrality scores month-by-month
cents = []
for G in Gs:
cent = ____
____
# Plot ECDFs over time
fig = plt.figure()
for i in ____:
____, ____ = ____
plt.plot(____, ____, label='Month {0}'.format(i+1))
plt.legend()
plt.show()