Calcular matriz de adjacência
Agora, você vai praticar o uso de matrizes e multiplicação de matrizes esparsas para calcular projeções! Neste exercício, você usará o operador de multiplicação de matrizes @, introduzido no Python 3.5.
Você continuará trabalhando com o grafo da Revolução Americana. As duas partições de interesse aqui são 'people' e 'clubs'.
Este exercício faz parte do curso
Análise de Redes Intermediária em Python
Instruções do exercício
- Obtenha a lista de pessoas e a lista de clubes a partir do grafo
Gusando a funçãoget_nodes_from_partition()que você definiu no capítulo anterior. Essa função aceita dois parâmetros: um grafo e uma partição. - Calcule a matriz de biadjacência usando
nx.bipartite.biadjacency_matrix(), definindo o parâmetrorow_ordercomopeople_nodese o parâmetrocolumn_ordercomoclubs_nodes. Lembre-se de também passar o grafoG. - Calcule a projeção usuário-usuário multiplicando (com o operador
@) a matriz de biadjacênciabi_matrixpor sua transposição,bi_matrix.T.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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)