unpack
Representation of Packed and Unpacked (Dense) Matrices
Description
“Packed” matrix storage here applies to dense matrices (denseMatrix
) only, and there is available only for symmetric (symmetricMatrix
) or triangular (triangularMatrix
) matrices, where only one triangle of the matrix needs to be stored.
unpack()
unpacks “packed” matrices, where
pack()
produces “packed” matrices.
Usage
pack(x, ...) ## S4 method for signature 'matrix' pack(x, symmetric = NA, upperTri = NA, ...) unpack(x, ...)
Arguments
x |
|
symmetric | logical (including |
upperTri | (for the triangular case only) logical (incl. |
... | further arguments passed to or from other methods. |
Details
These are generic functions with special methods for different types of packed (or non-packed) symmetric or triangular dense matrices. Use showMethods("unpack")
to list the methods for unpack()
, and similarly for pack()
.
Value
- for
unpack()
: -
A
Matrix
object containing the full-storage representation ofx
. - for
pack()
: -
A packed
Matrix
(i.e. of class"..pMatrix"
) representation ofx
.
Examples
showMethods("unpack") (cp4 <- chol(Hilbert(4))) # is triangular tp4 <- as(cp4,"dtpMatrix")# [t]riangular [p]acked str(tp4) (unpack(tp4)) stopifnot(identical(tp4, pack(unpack(tp4)))) (s <- crossprod(matrix(sample(15), 5,3))) # traditional symmetric matrix (sp <- pack(s)) mt <- as.matrix(tt <- tril(s)) (pt <- pack(mt)) stopifnot(identical(pt, pack(tt)), dim(s ) == dim(sp), all(s == sp), dim(mt) == dim(pt), all(mt == pt), all(mt == tt)) showMethods("pack")
Copyright (©) 1999–2012 R Foundation for Statistical Computing.
Licensed under the GNU General Public License.