igraph取消列表的图表

时间:2016-06-30 17:13:46

标签: r list igraph

我有一个8个图表的列表,这些图表是通过一个矩阵列表和igraph命令“graph_from_adjacency_matrix'”获得的。 我想将这8个图表提取到8个单独的图表中,但我找不到有关此类过程的任何信息。

请在下面找到一个抽象的例子:`

A = matrix(c(2, 4, 3, 1, 5, 7), nrow=3,ncol=3) 
B = matrix(c(2, 3, 3, 2, 5, 6), nrow=3,ncol=3)
C = matrix(c(0, 5, 3, 4, 5, 2), nrow=3,ncol=3)
Matrix<-list(A,B,C)
Graph<-lapply(Matrix,graph_from_adjacency_matrix,weighted = NULL,diag= FALSE)

我想有3个新的igraphs对象,对应于Graph [[1]],Graph [[2]],Graph [[3]]

有人可以帮助我吗?

提前谢谢你,

SOSA Sebastian

1 个答案:

答案 0 :(得分:2)

我同意@Spacedman的说法,出于编程目的,使用列表或嵌套列表表单中的图表会更容易。

也就是说,如果要将结果图表动态分配给新变量,可以使用assign函数,例如:

for(i in seq_along(Graph)) {
  assign(paste0('g', i), Graph[i])
}

这将生成与每个列表条目对应的变量g1, g2, ..., gn

另外,作为一个快速的建议,我建议避免使用大写的变量名。根据大多数编码惯例(例如Hadley&#39; s http://adv-r.had.co.nz/Style.html),变量名称应全部为小写。