proj
Projections of Models
proj
returns a matrix or list of matrices giving the projections
of the data onto the terms of a linear model. It is most frequently
used for aov
models.
 Keywords
 models
Usage
proj(object, ...)
"proj"(object, onedf = FALSE, unweighted.scale = FALSE, ...)
"proj"(object, onedf = FALSE, unweighted.scale = FALSE, ...)
"proj"(object, onedf = TRUE, ...)
"proj"(object, onedf = FALSE, unweighted.scale = FALSE, ...)
Arguments
 object
 An object of class
"lm"
or a class inheriting from it, or an object with a similar structure including in particular componentsqr
andeffects
.  onedf
 A logical flag. If
TRUE
, a projection is returned for all the columns of the model matrix. IfFALSE
, the singlecolumn projections are collapsed by terms of the model (as represented in the analysis of variance table).  unweighted.scale
 If the fit producing
object
used weights, this determines if the projections correspond to weighted or unweighted observations.  ...
 Swallow and ignore any other arguments.
Details
A projection is given for each stratum of the object, so for aov
models with an Error
term the result is a list of projections.
Value

A projection matrix or (for multistratum objects) a list of
projection matrices.Each projection is a matrix with a row for each observations and
either a column for each term (
onedf = FALSE
) or for each
coefficient (onedf = TRUE
). Projection matrices from the
default method have orthogonal columns representing the projection of
the response onto the column space of the Q matrix from the QR
decomposition. The fitted values are the sum of the projections, and
the sum of squares for each column is the reduction in sum of squares
from fitting that column (after those to the left of it).The methods for lm
and aov
models add a column to the
projection matrix giving the residuals (the projection of the data
onto the orthogonal complement of the model space).Strictly, when onedf = FALSE
the result is not a projection,
but the columns represent sums of projections onto the columns of the
model matrix corresponding to that term. In this case the matrix does
not depend on the coding used.
References
Chambers, J. M., Freeny, A and Heiberger, R. M. (1992) Analysis of variance; designed experiments. Chapter 5 of Statistical Models in S eds J. M. Chambers and T. J. Hastie, Wadsworth & Brooks/Cole.
See Also
Examples
library(stats)
N < c(0,1,0,1,1,1,0,0,0,1,1,0,1,1,0,0,1,0,1,0,1,1,0,0)
P < c(1,1,0,0,0,1,0,1,1,1,0,0,0,1,0,1,1,0,0,1,0,1,1,0)
K < c(1,0,0,1,0,1,1,0,0,1,0,1,0,1,1,0,0,0,1,1,1,0,1,0)
yield < c(49.5,62.8,46.8,57.0,59.8,58.5,55.5,56.0,62.8,55.8,69.5,
55.0, 62.0,48.8,45.5,44.2,52.0,51.5,49.8,48.8,57.2,59.0,53.2,56.0)
npk < data.frame(block = gl(6,4), N = factor(N), P = factor(P),
K = factor(K), yield = yield)
npk.aov < aov(yield ~ block + N*P*K, npk)
proj(npk.aov)
## as a test, not particularly sensible
options(contrasts = c("contr.helmert", "contr.treatment"))
npk.aovE < aov(yield ~ N*P*K + Error(block), npk)
proj(npk.aovE)
Community examples
Looks like there are no examples yet.