| graph2SparseM {graph} | R Documentation |
These functions provide coercions between objects that inherit from
the graph class to sparse matrices from the SparseM
package.
graph2SparseM(g, useweights=FALSE)
sparseM2Graph(sM, nodeNames, edgemode=c("directed", "undirected"))
g |
An instance of the graph class. |
useweights |
A logical value indicating whether to use the edge weights in the graph as values in the sparse matrix. |
sM |
A sparse matrix. |
nodeNames |
A character vector of the node names. |
edgemode |
Specifies whether the graph to be created should have
directed (default) or undirected edges. If undirected, the input
matrix sM must be symmetric. |
A very simple coercion from one representation to another.
Currently it is presumed that the matrix is square. For other graph formats, such as bipartite graphs, some improvements will be needed; patches are welcome.
graph2SparseM takes as input an instance of a subclass of the
graph class and returns a sparse matrix.
sparseM2Graph takes a sparse matrix as input and returns an
instance of the graphNEL class. By default, the
graphNEL returned will have directed edges.
R. Gentleman
graph-class,
graphNEL-class, and for
other conversions, aM2bpG and ftM2adjM
set.seed(123) g1 <- randomGraph(letters[1:10], 1:4, p=.3) s1 <- graph2SparseM(g1, useweights=TRUE) g2 <- sparseM2Graph(s1, letters[1:10], edgemode="undirected") ## consistency check stopifnot(all.equal(g1, g2))