BaşlayınÜcretsiz Başlayın

Diğer bölümdeki ortak düğümler

Öneri sistemleri kavramını adım adım kurmak için temellerden başlayacağız. Burada odak, iki parçalı (bipartite) graflarda kullanıcı benzerliğini hesaplamak.

Görevin, iki düğüm alan ve iki kullanıcı düğümü arasında ortak olan depo düğümlerinin kümesini döndüren bir fonksiyon yazmak.

Bu egzersizde aşağıdaki metot ve fonksiyonlar işine yarayacak: .neighbors(), set() ve .intersection() — tabii tanımlayacağın shared_partition_nodes fonksiyonuna ek olarak!

Bu egzersiz

Python ile Orta Düzey Ağ (Network) Analizi

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • shared_partition_nodes() adlı, 3 argüman alan — bir grafik G, node1 ve node2 — ve node1 ile node2 arasında ortak olan düğümlerin kümesini döndüren bir fonksiyon yaz.
    • assert ifadesi ve 'bipartite' anahtar sözcüğünü kullanarak node1 ve node2'nin aynı bölüme ait olduğunu kontrol et.
    • node1'in komşularını al ve nbrs1 olarak sakla.
    • node2'nin komşularını al ve nbrs2 olarak sakla.
  • Kesişimi, kümenin .intersection() metodunu kullanarak nbrs1 ve nbrs2 arasında hesapla.
  • shared_partition_nodes() fonksiyonunu ve len() fonksiyonunu birlikte kullanarak 'u7909' ve 'u2148' kullanıcıları arasındaki ortak depo sayısını yazdır.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

def ____:
    # Check that the nodes belong to the same partition
    assert G.nodes[____]['bipartite'] == G.nodes[____]['bipartite']

    # Get neighbors of node 1: nbrs1
    nbrs1 = ____
    # Get neighbors of node 2: nbrs2
    nbrs2 = ____

    # Compute the overlap using set intersections
    overlap = ____(____).____(____)
    return overlap

# Print the number of shared repositories between users 'u7909' and 'u2148'
print(____(____))
Kodu Düzenle ve Çalıştır