Create graphs from an incidence matrix
graph_from_incidence_matrix creates a bipartite igraph graph from an incidence
graph_from_incidence_matrix(incidence, directed = FALSE, mode = c("all", "out", "in", "total"), multiple = FALSE, weighted = NULL, add.names = NULL)
- The input incidence matrix. It can also be a sparse matrix
- Logical scalar, whether to create a directed graph.
- A character constant, defines the direction of the edges in
directed graphs, ignored for undirected graphs. If
, then edges go from vertices of the first kind (corresponding to rows in the incidence matrix) to vertices of
- Logical scalar, specifies how to interpret the matrix elements. See details below.
- This argument specifies whether to create a weighted graph
from the incidence matrix. If it is
NULLthen an unweighted graph is created and the
multipleargument is used to determine the edges of the graph. If it is a character c
- A character constant,
graph_from_incidence_matrixcan add the row and column names of the incidence matrix as vertex attributes. If this argument is
NULL(the default) and the incidence matri
- Passed to
Bipartite graphs have a
FALSE for the vertices of the first kind and
TRUE for vertices of the second kind.
graph_from_incidence_matrix can operate in two modes, depending on the
multiple argument. If it is
FALSE then a single edge is
created for every non-zero element in the incidence matrix. If
TRUE, then the matrix elements are rounded up to
the closest non-negative integer to get the number of edges to create
between a pair of vertices.
- A bipartite igraph graph. In other words, an igraph graph that has a
make_bipartite_graph for another way to create bipartite
inc <- matrix(sample(0:1, 15, repl=TRUE), 3, 5) colnames(inc) <- letters[1:5] rownames(inc) <- LETTERS[1:3] graph_from_incidence_matrix(inc)