인접 행렬 계산하기
이제 행렬과 희소 행렬 곱셈을 사용해 프로젝션을 계산하는 연습을 해 볼게요! 이번 연습에서는 Python 3.5에서 도입된 행렬 곱셈 연산자 @를 사용합니다.
미국 독립혁명 그래프를 계속 활용합니다. 여기서 관심 있는 두 파티션은 'people'과 'clubs'입니다.
이 연습은 강의의 일부입니다
Python 중급 네트워크 분석
연습 안내
- 이전 장에서 정의한
get_nodes_from_partition()함수를 사용해 그래프G에서 사람 목록과 클럽 목록을 가져오세요. 이 함수는 그래프와 파티션, 두 개의 매개변수를 받습니다. nx.bipartite.biadjacency_matrix()를 사용해 biadjacency 행렬을 계산하세요. 이때row_order매개변수는people_nodes,column_order매개변수는clubs_nodes로 설정하고, 그래프G도 함께 전달하세요.- biadjacency 행렬
bi_matrix에 전치 행렬bi_matrix.T를@연산자로 곱해 사용자-사용자 프로젝션을 계산하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# 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)