Tính ma trận kề
Bây giờ, bạn sẽ luyện tập dùng ma trận và phép nhân ma trận thưa để tính các phép chiếu! Trong bài này, bạn sẽ dùng toán tử nhân ma trận @ được giới thiệu trong Python 3.5.
Bạn sẽ tiếp tục làm việc với đồ thị American Revolution. Hai phân hoạch quan tâm ở đây là 'people' và 'clubs'.
Bài tập này là một phần của khóa học
Phân tích mạng nâng cao với Python
Hướng dẫn bài tập
- Lấy danh sách người và danh sách câu lạc bộ từ đồ thị
Gbằng hàmget_nodes_from_partition()mà bạn đã định nghĩa ở chương trước. Hàm này nhận hai tham số: một đồ thị và một phân hoạch. - Tính ma trận kề đôi bằng
nx.bipartite.biadjacency_matrix(), đặt tham sốrow_orderlàpeople_nodesvàcolumn_orderlàclubs_nodes. Nhớ truyền cả đồ thịG. - Tính phép chiếu user-user bằng cách nhân (với toán tử
@) ma trận kề đôibi_matrixvới chuyển vị của nó,bi_matrix.T.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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)