Bereken de adjacentiematrix
Nu ga je oefenen met matrices en vermenigvuldiging van sparse matrices om projecties te berekenen! In deze oefening gebruik je de matrixvermenigvuldigingsoperator @, die is geïntroduceerd in Python 3.5.
Je werkt verder met de American Revolution-graaf. De twee partities die hier relevant zijn, zijn 'people' en 'clubs'.
Deze oefening maakt deel uit van de cursus
Gemiddelde netwerkanalyse in Python
Oefeninstructies
- Haal de lijst met personen en de lijst met clubs uit de graaf
Gmet de functieget_nodes_from_partition()die je in het vorige hoofdstuk hebt gedefinieerd. Deze functie accepteert twee parameters: een graaf en een partitie. - Bereken de bi-adjacentiematrix met
nx.bipartite.biadjacency_matrix(), waarbij je de parameterrow_orderinstelt oppeople_nodesencolumn_orderopclubs_nodes. Vergeet niet ook de graafGmee te geven. - Bereken de user-user-projectie door (met de
@-operator) de bi-adjacentiematrixbi_matrixte vermenigvuldigen met zijn transpositie,bi_matrix.T.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# 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)