graph2T
Conversions "graph" (sparse) Matrix
Description
The Matrix package has supported conversion from and to "graph"
objects from (Bioconductor) package graph since summer 2005, via the usual as(., "<class>")
coercion,
as(from, Class)
Since 2013, this functionality is further exposed as the graph2T()
and T2graph()
functions (with further arguments than just from
), which convert graphs to and from the triplet form of sparse matrices (of class "TsparseMatrix"
) .
Usage
graph2T(from, use.weights = ) T2graph(from, need.uniq = is_not_uniqT(from), edgemode = NULL)
Arguments
from | for |
use.weights | logical indicating if weights should be used, i.e., equivalently the result will be numeric, i.e. of class |
need.uniq | a logical indicating if |
edgemode | one of |
Value
For graph2T()
, a sparse matrix inheriting from "TsparseMatrix"
.
For T2graph()
an R object of class "graph"
.
See Also
Note that the CRAN package igraph also provides conversions from and to sparse matrices (of package Matrix) via its graph.adjacency()
and get.adjacency()
.
Examples
if(isTRUE(try(require(graph)))) { ## super careful .. for "checking reasons" n4 <- LETTERS[1:4]; dns <- list(n4,n4) show(a1 <- sparseMatrix(i= c(1:4), j=c(2:4,1), x = 2, dimnames=dns)) show(g1 <- as(a1, "graph")) # directed unlist(edgeWeights(g1)) # all '2' show(a2 <- sparseMatrix(i= c(1:4,4), j=c(2:4,1:2), x = TRUE, dimnames=dns)) show(g2 <- as(a2, "graph")) # directed # now if you want it undirected: show(g3 <- T2graph(as(a2,"TsparseMatrix"), edgemode="undirected")) show(m3 <- as(g3,"Matrix")) show( graph2T(g3) ) # a "pattern Matrix" (nsTMatrix) a. <- sparseMatrix(i= 4:1, j=1:4, dimnames=list(n4,n4), giveC=FALSE) # no 'x' show(a.) # "ngTMatrix" show(g. <- as(a., "graph")) }
Copyright (©) 1999–2012 R Foundation for Statistical Computing.
Licensed under the GNU General Public License.