Zacznij terazZacznij za darmo

Głębsza analiza – sieć Twitter

Czas na głębszą analizę sieci Twitter – to doskonała okazja, by utrwalić zdobytą wiedzę. Na początek znajdziesz węzły, które mogą bardzo sprawnie rozsyłać wiadomości do wielu osób oddalonych o jeden stopień separacji.

NetworkX jest już zaimportowany jako nx.

To ćwiczenie jest częścią kursu

Wprowadzenie do analizy sieci w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Napisz funkcję find_nodes_with_highest_deg_cent(G), która zwraca węzeł lub węzły o najwyższej centralności stopnia, wykonując następujące kroki:
    • Oblicz centralność stopnia grafu G.
    • Wyznacz maksymalną centralność stopnia, używając funkcji max() na list(deg_cent.values()).
    • Iteruj po słowniku centralności stopnia: deg_cent.items().
    • Jeśli wartość centralności stopnia v bieżącego węzła k jest równa max_dc, dodaj go do zbioru węzłów.
  • Użyj swojej funkcji, aby znaleźć węzeł lub węzły o najwyższej centralności stopnia w grafie T.
  • Napisz instrukcję assert, która sprawdza poprawność identyfikacji węzłów. Ten krok jest już przygotowany – kliknij „Prześlij odpowiedź", aby zobaczyć wynik!

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Define find_nodes_with_highest_deg_cent()
def find_nodes_with_highest_deg_cent(G):

    # Compute the degree centrality of G: deg_cent
    deg_cent = ____

    # Compute the maximum degree centrality: max_dc
    max_dc = ____

    nodes = set()

    # Iterate over the degree centrality dictionary
    for k, v in ____:

        # Check if the current value has the maximum degree centrality
        if ____ == ____:

            # Add the current node to the set of nodes
            ____

    return nodes

# Find the node(s) that has the highest degree centrality in T: top_dc
top_dc = ____
print(top_dc)

# Write the assertion statement
for node in top_dc:
    assert nx.degree_centrality(T)[node] == max(nx.degree_centrality(T).values())
Edytuj i uruchom kod