Calcular la matriz de adyacencia
Ahora vas a practicar el uso de matrices y la multiplicación de matrices dispersas para calcular proyecciones. En este ejercicio, usarás el operador de multiplicación de matrices @ introducido en Python 3.5.
Seguirás trabajando con el grafo de la Revolución Americana. Las dos particiones que nos interesan aquí son 'people' y 'clubs'.
Este ejercicio forma parte del curso
Análisis de redes intermedio en Python
Instrucciones del ejercicio
- Obtén la lista de personas y la lista de clubes del grafo
Gusando la funciónget_nodes_from_partition()que definiste en el capítulo anterior. Esta función acepta dos parámetros: un grafo y una partición. - Calcula la matriz biadyacente usando
nx.bipartite.biadjacency_matrix(), estableciendo el parámetrorow_orderapeople_nodesy el parámetrocolumn_orderaclubs_nodes. Recuerda pasar también el grafoG. - Calcula la proyección usuario-usuario multiplicando (con el operador
@) la matriz biadyacentebi_matrixpor su traspuesta,bi_matrix.T.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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)