LoslegenKostenlos starten

Gewichte auf Kanten festlegen

Gewichte können Kanten in einem Graphen hinzugefügt werden und geben typischerweise die „Stärke“ einer Kante an. In NetworkX wird das Gewicht durch den Schlüssel 'weight' im Metadaten-Wörterbuch angegeben.

Bevor du die Übung angehst, nutze die IPython-Shell, um auf die Metadaten von T zuzugreifen und sie zu erkunden, zum Beispiel mit den Befehlen T.edges[1, 10] und anschließend T.edges[10, 1]. Beachte, dass es nur ein Feld gibt, und jetzt fügst du ein weiteres Feld namens 'weight' hinzu.

Diese Übung ist Teil des Kurses

<Kurs>Einstieg in die Netzwerkanalyse mit Python</Kurs>
Kurs ansehen

Übungsanweisungen

  • Setze das 'weight'-Attribut der Kante zwischen den Knoten 1 und 10 von T auf 2. Orientiere dich an der folgenden Vorlage, um ein Attribut einer Kante zu setzen: network_name.edges[node1, node2]['attribute'] = value. Hier ist das 'attribute' 'weight'.
  • Setze das Gewicht jeder Kante, an der der Knoten 293 beteiligt ist, auf 1.1. Gehe dazu so vor:
    • Iteriere mit einer for-Schleife über alle Kanten von T, inklusive der metadata.
    • Wenn 293 in der Liste der Knoten [u, v] vorkommt:
      • Setze das Gewicht der Kante zwischen u und v auf 1.1.

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# 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
Code bearbeiten und ausführen