as_adj_list {igraph}R Documentation

Adjacency lists

Description

Create adjacency lists from a graph, either for adjacent edges or for neighboring vertices

Usage

as_adj_list(
  graph,
  mode = c("all", "out", "in", "total"),
  loops = c("twice", "once", "ignore"),
  multiple = TRUE
)

as_adj_edge_list(
  graph,
  mode = c("all", "out", "in", "total"),
  loops = c("twice", "once", "ignore")
)

Arguments

graph

The input graph.

mode

Character scalar, it gives what kind of adjacent edges/vertices to include in the lists. ‘out’ is for outgoing edges/vertices, ‘⁠in⁠’ is for incoming edges/vertices, ‘all’ is for both. This argument is ignored for undirected graphs.

loops

Character scalar, one of "ignore" (to omit loops), "twice" (to include loop edges twice) and "once" (to include them once). "twice" is not allowed for directed graphs and will be replaced with "once".

multiple

Logical scalar, set to FALSE to use only one representative of each set of parallel edges.

Details

as_adj_list() returns a list of numeric vectors, which include the ids of neighbor vertices (according to the mode argument) of all vertices.

as_adj_edge_list() returns a list of numeric vectors, which include the ids of adjacent edges (according to the mode argument) of all vertices.

If igraph_opt("return.vs.es") is true (default), the numeric vectors of the adjacency lists are coerced to igraph.vs, this can be a very expensive operation on large graphs.

Value

A list of igraph.vs or a list of numeric vectors depending on the value of igraph_opt("return.vs.es"), see details for performance characteristics.

Author(s)

Gabor Csardi csardi.gabor@gmail.com

See Also

as_edgelist(), as_adj()

Other conversion: as.directed(), as.matrix.igraph(), as_adjacency_matrix(), as_biadjacency_matrix(), as_data_frame(), as_edgelist(), as_graphnel(), as_long_data_frame(), graph_from_adj_list(), graph_from_graphnel()

Examples


g <- make_ring(10)
as_adj_list(g)
as_adj_edge_list(g)


[Package igraph version 2.0.3 Index]