邻接列表是数字向量的列表,包含每个顶点的相邻顶点。此函数从这样的列表创建一个igraph图对象。
用法
graph_from_adj_list(
adjlist,
mode = c("out", "in", "all", "total"),
duplicate = TRUE
)
详细信息
如果您打算对图进行许多(小的)修改,则邻接列表非常方便。在这种情况下,邻接列表比igraph图更有效。
其思路是,您可以使用as_adj_list()
将图转换为邻接列表,对图进行修改,最后通过调用graph_from_adj_list()
再次创建一个igraph图。
参见
其他转换:as.matrix.igraph()
, as_adj_list()
, as_adjacency_matrix()
, as_biadjacency_matrix()
, as_data_frame()
, as_directed()
, as_edgelist()
, as_graphnel()
, as_long_data_frame()
, graph_from_graphnel()
作者
Gabor Csardi csardi.gabor@gmail.com
示例
## Directed
g <- make_ring(10, directed = TRUE)
al <- as_adj_list(g, mode = "out")
g2 <- graph_from_adj_list(al)
isomorphic(g, g2)
#> [1] TRUE
## Undirected
g <- make_ring(10)
al <- as_adj_list(g)
g2 <- graph_from_adj_list(al, mode = "all")
isomorphic(g, g2)
#> [1] TRUE
ecount(g2)
#> [1] 10
g3 <- graph_from_adj_list(al, mode = "all", duplicate = FALSE)
ecount(g3)
#> [1] 20
which_multiple(g3)
#> [1] FALSE FALSE TRUE FALSE TRUE FALSE TRUE FALSE TRUE FALSE TRUE FALSE
#> [13] TRUE FALSE TRUE FALSE TRUE FALSE TRUE TRUE