1. Učit se
  2. /
  3. Kurzy
  4. /
  5. Analiza sieci w Pythonie – poziom średniozaawansowany

Connected

Cvičení

Wspólne węzły w drugiej partycji

Zanim przejdziemy do budowy systemów rekomendacji, zacznijmy od podstaw. W tym ćwiczeniu skupiamy się na obliczaniu podobieństwa między użytkownikami w grafach dwudzielnych.

Twoim zadaniem jest napisanie funkcji, która przyjmuje dwa węzły i zwraca zbiór węzłów repozytoriów wspólnych dla obu użytkowników.

W tym ćwiczeniu przydadzą ci się: metoda .neighbors(), funkcja set() oraz metoda .intersection() – a oczywiście także funkcja shared_partition_nodes, którą sam zdefiniujesz!

Pokyny

100 XP
  • Napisz funkcję o nazwie shared_partition_nodes(), która przyjmuje 3 argumenty – graf G, node1 i node2 – i zwraca zbiór węzłów wspólnych dla node1 i node2.
    • Sprawdź za pomocą instrukcji assert i słowa kluczowego 'bipartite', czy node1 i node2 należą do tej samej partycji.
    • Pobierz sąsiadów węzła node1 i zapisz je jako nbrs1.
    • Pobierz sąsiadów węzła node2 i zapisz je jako nbrs2.
  • Oblicz część wspólną zbiorów nbrs1 i nbrs2 za pomocą metody .intersection().
  • Wyświetl liczbę wspólnych repozytoriów użytkowników 'u7909' i 'u2148', korzystając z funkcji shared_partition_nodes() oraz funkcji len().