测量不同子图的社区权重

Measure weight of communities for different subgraphs

我在我的邻接矩阵中检测社区。并行地,我使用同一矩阵的顶点创建一个从属关系矩阵。如何衡量社区在隶属关系矩阵每一列中的权重?

取如下邻接矩阵:

    A   B   C   D   E   F   G
A   0   1   0   1   0   1   0
B   1   0   1   1   0   1   0
C   0   1   0   0   0   0   0
D   1   1   0   0   1   1   0
E   0   0   0   1   0   1   0
F   1   1   0   1   1   0   1
G   0   0   0   0   0   1   0

我确定社区:

com <- edge.betweenness.community(g)
V(g)$memb <- com$membership

现在采用以下从属关系矩阵:

    P   R   Q
A   1   1   0
B   1   0   1
C   1   1   0
D   0   1   0
E   1   0   1
F   0   0   1
G   1   1   0

如何计算从属矩阵中隶属于"P"的社区[[1]]对应的顶点数?

您可以 sum(m[com[[1]],"P"]>0),因为 m 包含您的从属关系矩阵。或者 lapply(com, function(x) colSums(m[x, ])) 代表所有社区。