ÎncepețiÎncepe gratuit

Calculează numărul de vecini pentru fiecare nod

Cum evaluezi dacă un nod este important sau nu? Există mai multe modalități, iar aici vei analiza o singură metrică: numărul de vecini ai unui nod.

Orice graf NetworkX G expune o metodă .neighbors(n) care returnează un iterator cu nodurile vecine ale nodului n. Pentru început, folosește această metodă în IPython Shell pe rețeaua Twitter T pentru a obține vecinii nodului 1. Astfel te vei familiariza cu modul în care funcționează metoda. Apoi, sarcina ta în acest exercițiu este să scrii o funcție care returnează toate nodurile ce au m vecini.

Acest exercițiu face parte din cursul

Introducere în analiza rețelelor în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Scrie o funcție numită nodes_with_m_nbrs() cu doi parametri – G și m – care returnează toate nodurile ce au m vecini. Pentru a face asta:
    • Iterează peste toate nodurile din G (fără a include metadatele).
    • Folosește funcțiile len() și list() împreună cu metoda .neighbors() pentru a calcula numărul total de vecini ai nodului n din graful G.
      • Dacă numărul de vecini ai nodului n este egal cu m, adaugă n la setul nodes folosind metoda .add().
    • După ce ai iterat peste toate nodurile din G, returnează setul nodes.
  • Folosește funcția nodes_with_m_nbrs() pentru a obține toate nodurile care au 6 vecini în graful T.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Define nodes_with_m_nbrs()
def ____:
    """
    Returns all nodes in graph G that have m neighbors.
    """
    nodes = set()

    # Iterate over all nodes in G
    for n in ____:

        # Check if the number of neighbors of n matches m
        if ____ == ____:

            # Add the node n to the set
            ____

    # Return the nodes with m neighbors
    return nodes

# Compute and print all nodes in T that have 6 neighbors
six_nbrs = ____
print(____)
Editează și rulează codul