Encuentra los nodos con mayor centralidad de grado
En este ejercicio, vas a profundizar para ver si hay algo interesante sobre los estudiantes más conectados de la red. Primero, encontrarás el grupo de estudiantes con las centralidades de grado más altas. Guardarás este resultado para el siguiente ejercicio de visualización.
Este ejercicio forma parte del curso
Análisis de redes intermedio en Python
Instrucciones del ejercicio
- Obtén las 5 puntuaciones de centralidad de grado únicas más altas. Para ello, usa la función
sorted(), donde el primer argumento es el set de valores de centralidad de grado de G (porque quieres centralidades de grado únicas) y el segundo argumento esreverse=True, para ordenarlo en orden descendente. Para limitar los resultados a las 5 mejores puntuaciones, añade el slicing apropiado al final de la sentencia. Además, recuerda usar.values()sobre el resultado de la centralidad de grado. - Crea una lista de nodos que tengan las 5 centralidades de grado generales más altas. Para hacerlo:
- Itera sobre el diccionario de puntuaciones de centralidad de grado usando el método
.items()ennx.degree_centrality(G). - Si
dcestá entop_dcs, añade el nodona la listatop_connected.
- Itera sobre el diccionario de puntuaciones de centralidad de grado usando el método
- Imprime el número de nodos que comparten las 5 puntuaciones más altas de centralidad de grado (
top_connected) usandolen().
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Get the top 5 unique degree centrality scores: top_dcs
top_dcs = ____(set(____), reverse=True)[____:____]
# Create list of nodes that have the top 5 highest overall degree centralities
top_connected = []
for n, dc in ____:
if ____ in ____:
____
# Print the number of nodes that share the top 5 degree centrality scores
print(____)