Learn R Programming

Matrix (version 0.999375-42)

model.Matrix: Construct Possibly Sparse Design or Model Matrices

Description

model.Matrix creates design matrix, very much like the standard Rfunction model.matrix, however returning a dense or sparse object of class modelMatrix.

Usage

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

Arguments

object
an object of an appropriate class. For the default method, a model formula or a 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 values (numeric matrices or character strings naming functions) to be used as replacement values for the contrasts replacement function and whose names are the names
xlev
to be used as argument of model.frame if data has no "terms" attribute.
sparse
logical indicating if the result should be sparse (of class sparseModelMatrix), using sparse.model.matrix().
...
further arguments passed to or from other methods.

Value

  • an object inheriting from class modelMatrix, by default, ddenseModelMatrix.

Details

model.Matrix() is a simple wrapper either (sparse = FALSE) around the traditional model.matrix() returning a "ddenseModelMatrix", or (sparse = TRUE) around sparse.model.matrix(), returning a "dsparseModelMatrix" object.

model.Matrix creates a design matrix from the description given in terms(object), using the data in data which must supply variables with the same names as would be created by a call to model.frame(object) or, more precisely, by evaluating attr(terms(object), "variables").

For more details, see model.matrix.

See Also

model.matrix, sparse.model.matrix.

Examples

Run this code
data(CO2, package="datasets")
class(sm <- model.Matrix(~ 0+Type*Treatment, data=CO2, sparse=TRUE))
class(dm <- model.Matrix(~ 0+Type*Treatment, data=CO2, sparse=FALSE))
stopifnot(dim(sm) == c(84,4), dim(sm) == dim(dm), all(sm == dm))

Run the code above in your browser using DataLab