【发布时间】:2020-10-30 14:22:47
【问题描述】:
例如,我得到了对称邻接矩阵(无自环),即
A =
[
[0, 1, 1, 0, 0],
[1, 0, 1, 0, 1],
[1, 1, 0, 1, 0],
[0, 0, 1, 0, 1],
[0, 1, 0, 1, 0]]
然后,我得到了一个与此图相关联的集群标签 i 数组,即
cluster = [1,1,2,2,3]
表示节点1和节点2在同一个组,节点3和节点4在同一个组,节点5在一个独立的组。
问题是我怎样才能得到组内和组间的边的总和,
组内:表示节点之间共享相同簇标签的边,例如节点1和节点2在同一个组中,因此它们的和为1,节点3和节点4相同。对于节点 5,其为 0。
组间:表示共享不同集群标签的节点之间的边,例如组1和组2,表示节点1节点3,节点1节点4,节点2节点3,节点的边之和2 节点 4。答案是组 1 和组 2 之间的 2。
然后返回一个包含结果的二维对称数组,即
[[1,2,1],
[2,1,1],
[1,1,0]]
【问题讨论】:
标签: python numpy igraph numpy-ndarray adjacency-matrix