MulaiMulai sekarang secara gratis

Hitung jumlah tetangga untuk setiap node

Bagaimana Anda menilai apakah sebuah node penting atau tidak? Ada beberapa cara untuk melakukannya, dan di sini Anda akan melihat satu metrik: jumlah tetangga yang dimiliki sebuah node.

Setiap graf NetworkX G menyediakan metode .neighbors(n) yang mengembalikan iterator node yang merupakan tetangga dari node n. Untuk memulai, gunakan metode ini di IPython Shell pada jaringan Twitter T untuk mendapatkan tetangga dari node 1. Ini akan membantu Anda memahami cara kerja fungsi tersebut. Selanjutnya, tugas Anda dalam latihan ini adalah menulis fungsi yang mengembalikan semua node yang memiliki m tetangga.

Latihan ini adalah bagian dari kursus

Pengantar Analisis Jaringan di Python

Lihat Kursus

Petunjuk latihan

  • Tulis fungsi bernama nodes_with_m_nbrs() yang memiliki dua parameter — G dan m — dan mengembalikan semua node yang memiliki m tetangga. Untuk melakukannya:
    • Iterasikan semua node dalam G (tidak termasuk metadata).
    • Gunakan fungsi len() dan list() bersama dengan metode .neighbors() untuk menghitung total jumlah tetangga yang dimiliki node n pada graf G.
      • Jika jumlah tetangga node n sama dengan m, tambahkan n ke himpunan nodes menggunakan metode .add().
    • Setelah mengiterasi semua node dalam G, kembalikan himpunan nodes.
  • Gunakan fungsi nodes_with_m_nbrs() Anda untuk mengambil semua node yang memiliki 6 tetangga dalam graf T.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# 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(____)
Edit dan Jalankan Kode