कनेक्टिविटी का विज़ुअलाइज़ेशन
यहाँ, आप देखेंगे कि सबसे ज़्यादा कनेक्टेड नोड्स की कनेक्टिविटी समय के साथ कैसे बदलती है. पिछले अभ्यास से टॉप कनेक्टेड वैल्यूज़ की लिस्ट top_connected लोड की गई है.
क्या आपको Chapter 1 में इस्तेमाल किया गया defaultdict याद है? इस अभ्यास में आप एक और defaultdict का उपयोग करेंगे! जैसा कि Eric ने वीडियो में बताया, यहाँ defaultdict बेहतर है क्योंकि एक सामान्य Python डिक्शनरी में अगर आप ऐसे key से आइटम लेने की कोशिश करेंगे जो अभी डिक्शनरी में मौजूद नहीं है, तो KeyError आ जाएगा.
इस अभ्यास में nested for लूप्स का इस्तेमाल होगा. यानी, आप एक for लूप के अंदर दूसरा for लूप चलाएँगे.
यह अभ्यास पाठ्यक्रम का हिस्सा है
इंटरमीडिएट Network Analysis in Python
अभ्यास निर्देश
- खाली लिस्ट्स वाला एक
defaultdictबनाएँ और उसेconnectivityनाम दें. top_connectedपरforलूप से iterate करें, और इस outerforलूप के बॉडी में, दोबाराGsपर iterate करें. इस nested लूप के अंदर:connectivityकी keys वे नोड्सnहोने चाहिएँ जोtop_connectedमें हैं, और values उनकी connectivity स्कोर्स की लिस्ट. इसलिए,connectivity[n]मेंlen(list(G.neighbors(n)))को append करें.
connectivityपर.items()से iterate करें और हर नोड की connectivity प्लॉट करने के लिएplt.plot()मेंconnपास करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Import necessary modules
import matplotlib.pyplot as plt
from collections import defaultdict
# Create a defaultdict in which the keys are nodes and the values are a list of connectivity scores over time
connectivity = ____
for n in ____:
for g in ____:
connectivity[____].____(len(____))
# Plot the connectivity for each node
fig = plt.figure()
for n, conn in ____:
plt.plot(____, label=n)
plt.legend()
plt.show()