Zacznij terazZacznij za darmo

Przypisywanie wag do krawędzi

Do krawędzi grafu można przypisywać wagi, które zazwyczaj oznaczają „siłę" danego połączenia. W NetworkX wagę reprezentuje klucz 'weight' w słowniku metadanych.

Zanim przejdziesz do ćwiczenia, skorzystaj z powłoki IPython, aby sprawdzić metadane słownika T – na przykład uruchamiając polecenia T.edges[1, 10], a następnie T.edges[10, 1]. Zwróć uwagę, że słownik zawiera tylko jedno pole. Za chwilę dodasz do niego kolejne pole o nazwie 'weight'.

To ćwiczenie jest częścią kursu

Wprowadzenie do analizy sieci w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Ustaw atrybut 'weight' krawędzi między węzłem 1 a 10 w grafie T na wartość 2. Skorzystaj z poniższego szablonu, aby ustawić atrybut krawędzi: network_name.edges[node1, node2]['attribute'] = value. Tutaj 'attribute' to 'weight'.
  • Ustaw wagę każdej krawędzi, w którą zaangażowany jest węzeł 293, na wartość 1.1. Aby to zrobić:
    • Używając pętli for, iteruj po wszystkich krawędziach grafu T, uwzględniając metadata.
    • Jeśli 293 znajduje się na liście węzłów [u, v]:
      • Ustaw wagę krawędzi między u a v na 1.1.

Interaktywne ćwiczenie praktyczne

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

# Set the weight of the edge
____ = 2

# Iterate over all the edges (with metadata)
for u, v, d in ____:

    # Check if node 293 is involved
    if 293 in ____:

        # Set the weight to 1.1
        ____ = 1.1
Edytuj i uruchom kod