我需要根据隶属关系数据选择邻接矩阵创建一个子图。如何匹配邻接和隶属矩阵?
采用以下邻接矩阵:
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
以下关联矩阵:
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对应的节点从邻接矩阵创建子图?
答案 0 :(得分:1)
如果您的目标是:
P
为1
的节点igraph
对象然后您可以通过以下方式实现这一目标:
# the names(which()) isn't needed for the subset of adj
p_nodes <- names(which(aff[,"P"] == 1))
p_adj <- adj[p_nodes, p_nodes]
p_graph <- igraph::graph.adjacency(p_graph)