Análisis en profundidad: red de Twitter (parte II)
Ahora vas a hacer un análisis similar de la centralidad de intermediación. Unas pocas pistas para ayudarte: recuerda que la centralidad de intermediación se calcula con nx.betweenness_centrality(G).
Este ejercicio forma parte del curso
Introducción al análisis de redes en Python
Instrucciones del ejercicio
- Escribe una función
find_node_with_highest_bet_cent(G)que devuelva el/los nodo(s) con la mayor centralidad de intermediación.- Calcula la centralidad de intermediación de
G. - Calcula la centralidad de intermediación máxima usando la función
max()sobrelist(bet_cent.values()). - Itera sobre el diccionario de centralidad de intermediación,
bet_cent.items(). - Si el valor de centralidad de intermediación
vdel nodo actualkes igual amax_bc, añádelo al conjunto de nodos.
- Calcula la centralidad de intermediación de
- Usa tu función para encontrar el/los nodo(s) con la mayor centralidad de intermediación en
T. - Escribe una aserción para comprobar que has obtenido el nodo correcto. Esto ya está hecho por ti, así que pulsa "Enviar respuesta" para ver el resultado.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Define find_node_with_highest_bet_cent()
def find_node_with_highest_bet_cent(G):
# Compute betweenness centrality: bet_cent
bet_cent = ____
# Compute maximum betweenness centrality: max_bc
max_bc = ____
nodes = set()
# Iterate over the betweenness centrality dictionary
for k, v in ____:
# Check if the current value has the maximum betweenness centrality
if ____ == ____:
# Add the current node to the set of nodes
____
return nodes
# Use that function to find the node(s) that has the highest betweenness centrality in the network: top_bc
top_bc = ____
print(top_bc)
# Write an assertion statement that checks that the node(s) is/are correctly identified.
for node in top_bc:
assert nx.betweenness_centrality(T)[node] == max(nx.betweenness_centrality(T).values())