Klíčové slovo bipartite
Ve videu tě Eric seznámil s klíčovým slovem 'bipartite'. Toto klíčové slovo je součástí metadatového slovníku uzlu a lze ho přiřadit jak při přidání uzlu, tak i dodatečně. Pamatuj ale, že v bipartitním grafu podle definice nemůže být uzel propojený s jiným uzlem ve stejné partici.
Teď napíšeš funkci, která vrátí uzly z dané partice bipartitního grafu. V tomto případě jsou relevantnními particemi bipartitního grafu GitHubu, se kterým budeš pracovat, 'projects' a 'users'.
Toto cvičení je součástí kurzu
Intermediate Network Analysis in Python
Pokyny k cvičení
- Napiš funkci
get_nodes_from_partition(), která přijímá dva argumenty – bipartitní grafGa participartitiongrafuG– a vrátí pouze uzly z dané partice.- Pomocí cyklu
foriteruj přes všechny uzly grafuG(bez metadat). - Přistup ke klíčovému slovu
'bipartite'v metadatovém slovníku aktuálního uzlu. Pokud se rovná hodnotěpartition, přidej aktuální uzel do seznamunodes.
- Pomocí cyklu
- Použij svou funkci
get_nodes_from_partition()spolu s funkcílen()k těmto úkolům:- Vypiš počet uzlů v partici
'projects'grafuG. - Vypiš počet uzlů v partici
'users'grafuG.
- Vypiš počet uzlů v partici
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Define get_nodes_from_partition()
def ____:
# Initialize an empty list for nodes to be returned
nodes = []
# Iterate over each node in the graph G
for n in ____:
# Check that the node belongs to the particular partition
if G.nodes[n]['____'] == ____:
# If so, append it to the list of nodes
____
return nodes
# Print the number of nodes in the 'projects' partition
print(____(get_nodes_from_partition(____, '____')))
# Print the number of nodes in the 'users' partition
print(____(____))