LoslegenKostenlos loslegen

Adjazenzmatrix berechnen

Jetzt übst du den Einsatz von Matrizen und dünn besetzten Matrizen (Sparse Matrices), um Projektionen zu berechnen! In dieser Aufgabe verwendest du den Matrixmultiplikations-Operator @, der in Python 3.5 eingeführt wurde.

Du arbeitest weiterhin mit dem American-Revolution-Graphen. Die beiden interessierenden Partitionen sind hier 'people' und 'clubs'.

Diese Übung ist Teil des Kurses

Fortgeschrittene Netzwerkanalyse in Python

Kurs anzeigen

Anleitung zur Übung

  • Hole dir die Liste der Personen und die Liste der Clubs aus dem Graphen G mit der Funktion get_nodes_from_partition(), die du im vorherigen Kapitel definiert hast. Diese Funktion akzeptiert zwei Parameter: einen Graphen und eine Partition.
  • Berechne die Bi-Adjazenzmatrix mit nx.bipartite.biadjacency_matrix() und setze den Parameter row_order auf people_nodes und den Parameter column_order auf clubs_nodes. Denk daran, auch den Graphen G zu übergeben.
  • Berechne die User-User-Projektion, indem du die Bi-Adjazenzmatrix bi_matrix mit ihrer Transposition bi_matrix.T multiplizierst (mit dem Operator @).

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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)
Code bearbeiten und ausführen