model.matrix {base} | R Documentation |
model.matrix
creates a design matrix.
model.matrix (object, ...) model.matrix.lm(object, ...) model.matrix.default(formula, data, contrasts.arg = NULL, xlev = NULL)
formula |
a model formula or terms object. |
data |
a data frame created with model.frame . |
contrasts.arg |
A list, whose entries are contrasts suitable for
input to the contrasts function and whose names are
the names of columns of data containing factor s. |
xlev |
to be used as argument of model.frame if
data has no "terms" attribute. |
x |
a model frame. |
model.matrix
creates a design matrix from the description given
in terms(formula)
, using the data in data
which must
contain columns with the same names as would be created by a call to
model.frame(formula)
or, more precisely, by evaluating
attr(terms(formula), "variables")
. There may be other columns
and the order is not important. If contrasts
is specified it
overrides the default factor coding for that variable.
The design matrix for a regression model with the specified formula and data.
Chambers, J. M. and Hastie, T. J. eds (1992) Statistical Models in S. Chapman & Hall, London.
model.frame
, model.extract
,
terms
data(trees) ff <- log(Volume) ~ log(Height) + log(Girth) str(m <- model.frame(ff, trees)) mat <- model.matrix(ff, m) dd <- data.frame(a = gl(3,4), b = gl(4,1,12))# balanced 2-way options("contrasts") model.matrix(~ a + b, dd) model.matrix(~ a + b, dd, contrasts = list(a="contr.sum")) model.matrix(~ a + b, dd, contrasts = list(a="contr.sum", b="contr.poly")) m.orth <- model.matrix(~a+b, dd, contrasts = list(a="contr.helmert")) crossprod(m.orth)# m.orth is ALMOST orthogonal