Vizualizează distribuția centralității gradului pentru proiecția studenților
În acest exercițiu, vei vizualiza distribuția centralității gradului pentru proiecția studenților. Acesta este un recapitulativ al două concepte pe care le-ai învățat anterior: centralitățile de grad și proiecțiile.
Acest exercițiu face parte din cursul
Analiză intermediară a rețelelor în Python
Instrucțiuni pentru exercițiu
- Obține nodurile partiției
'student'într-o listă numităstudent_nodes.- Folosește un list comprehension pentru aceasta, iterând peste toate nodurile din
G(inclusiv metadatele), și verificând dacă valoarea cheii'bipartite'dindeste egală cu'student'.
- Folosește un list comprehension pentru aceasta, iterând peste toate nodurile din
- Creează proiecția nodurilor studenților ca graf, cu numele
G_students. Folosește funcțianx.bipartite.projected_graph()pentru aceasta. Asigură-te că specifici argumentul cu cuvânt cheienodes=student_nodes. - Calculează centralitatea gradului pentru
G_studentsfolosindnx.degree_centrality(). Stochează rezultatul îndcs. - Trasează histograma valorilor de centralitate a gradului.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Import necessary modules
import matplotlib.pyplot as plt
import networkx as nx
# Get the student partition's nodes: student_nodes
student_nodes = [n for n, d in ____ if d['____'] == '____']
# Create the students nodes projection as a graph: G_students
G_students = ____
# Calculate the degree centrality using nx.degree_centrality: dcs
dcs = ____
# Plot the histogram of degree centrality values
plt.hist(list(____))
plt.yscale('log')
plt.show()