Zacznij terazZacznij za darmo

Oblicz macierz sąsiedztwa

Czas poćwiczyć korzystanie z macierzy i mnożenia rzadkich macierzy do obliczania projekcji! W tym ćwiczeniu użyjesz operatora mnożenia macierzy @, wprowadzonego w Pythonie 3.5.

Będziesz nadal pracować z grafem dotyczącym Rewolucji Amerykańskiej. Dwie interesujące nas partycje to 'people' i 'clubs'.

To ćwiczenie jest częścią kursu

Analiza sieci w Pythonie – poziom średniozaawansowany

Zobacz kurs

Instrukcje do ćwiczenia

  • Pobierz listę osób i listę klubów z grafu G, korzystając z funkcji get_nodes_from_partition(), którą zdefiniowano w poprzednim rozdziale. Funkcja przyjmuje dwa parametry: graf oraz partycję.
  • Oblicz macierz bisąsiedztwa za pomocą nx.bipartite.biadjacency_matrix(), ustawiając parametr row_order na people_nodes, a parametr column_order na clubs_nodes. Pamiętaj, aby przekazać też graf G.
  • Oblicz projekcję użytkownik–użytkownik, mnożąc (operatorem @) macierz bisąsiedztwa bi_matrix przez jej transpozycję bi_matrix.T.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Get the list of people and list of clubs from the graph: people_nodes, clubs_nodes
people_nodes = ____
clubs_nodes = ____

# Compute the biadjacency matrix: bi_matrix
bi_matrix = ____(____, row_order=____, column_order=____)

# Compute the user-user projection: user_matrix
user_matrix = ____

print(user_matrix)
Edytuj i uruchom kod