Beräkna adjacensmatris
Nu får du öva på att använda matriser och gles matrixmultiplikation för att beräkna projektioner! I den här övningen använder du matrixmultiplikationsoperatorn @ som introducerades i Python 3.5.
Du fortsätter att arbeta med grafen över Amerikanska revolutionen. De två partitioner som är aktuella här är 'people' och 'clubs'.
Den här övningen är en del av kursen
Nätverksanalys i Python – fortsättningskurs
Övningsinstruktioner
- Hämta listan över personer och listan över klubbar från grafen
Gmed hjälp av funktionenget_nodes_from_partition()som du definierade i föregående kapitel. Funktionen tar två parametrar: en graf och en partition. - Beräkna biadjacensmatrisen med
nx.bipartite.biadjacency_matrix(), och sätt parameternrow_ordertillpeople_nodesoch parameterncolumn_ordertillclubs_nodes. Kom ihåg att även skicka in grafenG. - Beräkna person-person-projektionen genom att multiplicera (med operatorn
@) biadjacensmatrisenbi_matrixmed dess transponat,bi_matrix.T.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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)