Głęboka analiza – sieć Twitter, część II
Teraz przeprowadzisz analogiczną głęboką analizę, tym razem skupiając się na centralności pośrednictwa! Pamiętaj, że oblicza się ją za pomocą nx.betweenness_centrality(G).
To ćwiczenie jest częścią kursu
Wprowadzenie do analizy sieci w Pythonie
Instrukcje do ćwiczenia
- Napisz funkcję
find_node_with_highest_bet_cent(G), która zwraca węzeł (lub węzły) o najwyższej centralności pośrednictwa.- Oblicz centralność pośrednictwa grafu
G. - Oblicz maksymalną centralność pośrednictwa, używając funkcji
max()nalist(bet_cent.values()). - Iteruj po słowniku centralności pośrednictwa,
bet_cent.items(). - Jeśli wartość centralności pośrednictwa
vbieżącego węzłakjest równamax_bc, dodaj go do zbioru węzłów.
- Oblicz centralność pośrednictwa grafu
- Użyj swojej funkcji, aby znaleźć węzeł (lub węzły) o najwyższej centralności pośrednictwa w
T. - Napisz instrukcję asercji sprawdzającą poprawność wyniku. Została już przygotowana, więc kliknij „Prześlij odpowiedź", aby zobaczyć rezultat!
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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())