sparse.model.matrix {Matrix}R Documentation

Construct Sparse Design / Model Matrices

Description

Construct a Model or “Design” Matrix

Usage

sparse.model.matrix(object, data = environment(object),
                    contrasts.arg = NULL, xlev = NULL, ...)

Arguments

object an object of an appropriate class. For the default method, a model formula or terms object.
data a data frame created with model.frame. If another sort of object, model.frame is called first.
contrasts.arg A list, whose entries are contrasts suitable for input to the contrasts replacement function and whose names are the names of columns of data containing factors.
xlev to be used as argument of model.frame if data has no "terms" attribute.
... further arguments passed to or from other methods.

Value

a sparse matrix, inheriting from CsparseMatrix, typically of class dgCMatrix.

Author(s)

Doug Bates and Martin Maechler, with initial suggestions from Tim Hesterberg.

See Also

model.matrix, ...

Examples

dd <- data.frame(a = gl(3,4), b = gl(4,1,12))# balanced 2-way
options("contrasts") # the default:  "contr.treatment"
sparse.model.matrix(~ a + b, dd)
sparse.model.matrix(~ -1+ a + b, dd)# no intercept --> even sparser
sparse.model.matrix(~ a + b, dd, contrasts = list(a="contr.sum"))
sparse.model.matrix(~ a + b, dd, contrasts = list(b="contr.SAS"))

## Sparse method is equivalent to the traditional one :
stopifnot(all(sparse.model.matrix(~ a + b, dd) ==
	      Matrix(model.matrix(~ a + b, dd), sparse=TRUE)),
          all(sparse.model.matrix(~ 0+ a + b, dd) ==
	      Matrix(model.matrix(~ 0+ a + b, dd), sparse=TRUE)))


[Package Matrix version 0.999375-33 Index]