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>Übungsanweisungen
- 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 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