Verdieping - Twitter-netwerk deel II
Nu ga je een vergelijkbare verdieping doen voor betweenness-centraliteit! Een paar tips om je op weg te helpen: onthoud dat betweenness-centraliteit wordt berekend met nx.betweenness_centrality(G).
Deze oefening maakt deel uit van de cursus
Introductie tot netwerkanalyse in Python
Oefeninstructies
- Schrijf een functie
find_node_with_highest_bet_cent(G)die de knoop(pen) met de hoogste betweenness-centraliteit teruggeeft.- Bereken de betweenness-centraliteit van
G. - Bepaal de maximale betweenness-centraliteit met de functie
max()oplist(bet_cent.values()). - Itereer over het betweenness-centraliteit-woordenboek,
bet_cent.items(). - Als de betweenness-waarde
vvan de huidige knoopkgelijk is aanmax_bc, voeg die dan toe aan de set met knopen.
- Bereken de betweenness-centraliteit van
- Gebruik je functie om de knoop(pen) te vinden met de hoogste betweenness-centraliteit in
T. - Schrijf een assert-instructie om te controleren dat je de juiste knoop hebt. Dit is al voor je gedaan, dus klik op 'Antwoord verzenden' om het resultaat te zien!
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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())