Specificarea greutății pe muchii
Muchiilor dintr-un graf li se pot atribui greutăți, care indică de obicei „intensitatea" unei conexiuni. În NetworkX, greutatea este indicată prin cheia 'weight' din dicționarul de metadate.
Înainte de a rezolva exercițiul, folosește IPython Shell pentru a accesa metadatele din dicționarul lui T și explorează-le, de exemplu rulând comenzile T.edges[1, 10] și apoi T.edges[10, 1]. Observă că există un singur câmp – acum vei adăuga un câmp nou, numit 'weight'.
Acest exercițiu face parte din cursul
Introducere în analiza rețelelor în Python
Instrucțiuni pentru exercițiu
- Setează atributul
'weight'al muchiei dintre nodurile1și10dinTla valoarea2. Folosește șablonul următor pentru a seta un atribut al unei muchii:network_name.edges[node1, node2]['attribute'] = value. Aici,'attribute'este'weight'. - Setează greutatea fiecărei muchii care implică nodul
293la valoarea1.1. Pentru aceasta:- Folosind o buclă
for, iterează peste toate muchiile luiT, inclusivmetadata. - Dacă
293apare în lista de noduri[u, v]:- Setează greutatea muchiei dintre
ușivla1.1.
- Setează greutatea muchiei dintre
- Folosind o buclă
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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