Kom igångKom igång gratis

Nyckelordet bipartite

I videon introducerade Eric nyckelordet 'bipartite'. Det här nyckelordet är en del av en nods metadataordbok och kan tilldelas både när du lägger till en nod och efter att noden lagts till. Kom ihåg att en nod per definition inte kan vara kopplad till en annan nod inom samma partition i en bipartit graf.

Här ska du skriva en funktion som returnerar noderna från en given partition i en bipartit graf. De relevanta partitionerna i den bipartita GitHub-graf du kommer att arbeta med är 'projects' och 'users'.

Den här övningen är en del av kursen

Nätverksanalys i Python – fortsättningskurs

Visa kurs

Övningsinstruktioner

  • Skriv en funktion som heter get_nodes_from_partition() och som tar emot två argument – en bipartit graf G och en partition i G – och returnerar enbart noderna från den partitionen.
    • Iterera över alla noder i G (utan att inkludera metadata) med en for-slinga.
    • Hämta nyckelordet 'bipartite' ur den aktuella nodens metadataordbok. Om det är lika med partition, lägg till den aktuella noden i listan nodes.
  • Använd din funktion get_nodes_from_partition() tillsammans med funktionen len() för att:
    • Skriva ut antalet noder i partitionen 'projects' i G.
    • Skriva ut antalet noder i partitionen 'users' i G.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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(____(____))
Redigera och kör kod