Podgrafy II
V předchozím cvičení jsme ti dali seznam uzlů, jejichž sousedy jsi měl/a extrahovat.
Vyzkoušej si ještě jedno cvičení, ve kterém extrahuješ uzly s určitou vlastností v metadatech spolu s jejich sousedy. Navazuje to na to, co ses naučil/a o list comprehensions při hledání uzlů, a zároveň procvičíš skládání funkcí, které už znáš.
Toto cvičení je součástí kurzu
Úvod do analýzy sítí v Pythonu
Pokyny k cvičení
- Pomocí list comprehension extrahuj uzly, které mají v metadatech
'occupation'nastavenou na'celebrity', včetně jejich sousedů:- Výstupním výrazem list comprehension je
na jsou tu dvě iterační proměnné:nad. Iterable je seznam uzlů grafuT(včetně metadat, která zadáš pomocídata=True); podmínka je splněna, pokud se klíč'occupation'slovníku metadatdrovná hodnotě'celebrity'.
- Výstupním výrazem list comprehension je
- Ulož je do nového podgrafu
T_sub. Postupuj takto:- Projdi uzly, pro každý vypočítej jeho sousedy a přidej je do množiny uzlů
nodesetpomocí metody.union(). Tato část je už za tebe hotová. - Pomocí
nodeseta metodyT.subgraph()vypočítejT_sub.
- Projdi uzly, pro každý vypočítej jeho sousedy a přidej je do množiny uzlů
- Vykresli
T_subna obrazovku.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Extract the nodes of interest: nodes
nodes = [n for n, d in ____ if ____ == ____]
# Create the set of nodes: nodeset
nodeset = set(nodes)
# Iterate over nodes
for n in ____:
# Compute the neighbors of n: nbrs
nbrs = ____
# Compute the union of nodeset and nbrs: nodeset
nodeset = nodeset.union(nbrs)
# Compute the subgraph using nodeset: T_sub
T_sub = ____
# Draw T_sub to the screen
____
plt.show()