Transformation to Other Sparse Formats
foreign.Rd
Transform between the spam
sparse format to the
matrix.csr
format of SparseM
and dgRMatrix
format of Matrix
Usage
as.spam.matrix.csr(x)
as.dgRMatrix.spam(x)
as.dgCMatrix.spam(x)
as.spam.dgRMatrix(x)
as.spam.dgCMatrix(x)
Details
We do not provide any S4
methods and because of the existing
mechanism a standard S3
does not work.
The functions are based on require
.
Notice that as.matrix.csr.spam
should read as as."matrix.csr".spam
.
Examples
if (FALSE) { # \dontrun{
S <- diag.spam(4)
R <- as.dgRMatrix.spam( S)
C <- as.dgCMatrix.spam( S)
as.spam.dgCMatrix(C)
slotNames(C)
slotNames(R)
# For column oriented sparse formats a transpose does not the job,
# as the slot names change.
# as.spam(R) does not work.
} # }
if (FALSE) { # \dontrun{
# for transformations between SparseM and spam:
as.matrix.csr.spam <- function(x,...) {
if (new("matrix.csr")) {
newx <- new("matrix.csr")
slot(newx,"ra",check=FALSE) <- x@entries
slot(newx,"ja",check=FALSE) <- x@colindices
slot(newx,"ia",check=FALSE) <- x@rowpointers
slot(newx,"dimension",check=FALSE) <- x@dimension
return(newx)
}
stop("function requires 'SparseM' package")
}
# then with `SparseM`: as.matrix.csr.spam( spamobject )
} # }
if (FALSE) { # \dontrun{
# a dataset contained in Matrix
data(KNex, package='Matrix')
summary( KN <- as.spam.dgCMatrix(KNex$mm) )
} # }