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
Einstieg in die Netzwerkanalyse mit Python
Anleitung zur Übung
- Setze das
'weight'-Attribut der Kante zwischen den Knoten1und10vonTauf2. 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
293beteiligt ist, auf1.1. Gehe dazu so vor:- Iteriere mit einer
for-Schleife über alle Kanten vonT, inklusive dermetadata. - Wenn
293in der Liste der Knoten[u, v]vorkommt:- Setze das Gewicht der Kante zwischen
uundvauf1.1.
- Setze das Gewicht der Kante zwischen
- Iteriere mit einer
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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