Fit an Analysis of Variance Model

Usage

aov(formula, data=sys.parent(), projections=FALSE, contrasts=NULL, ...)

Arguments

formula A formula specifying the model.
data A data frame in which the variables specified in the formula will be found. If missing, the variables are searched for in the standard way.
projections Not implemented: for compatibility with S.
contrasts A list of contrasts to be used for some of the factors in the formula. This is not supported by the current version of model.matrix.default and so has no effect.
... Arguments to be passed to lm, such as subset or na.action.

Description

This provides a wrapper to lm for fitting linear models to balanced or unbalanced experimental designs. The call to lm sets singular.ok to TRUE to allow for aliased effects.

The main difference from lm is in the way print, summary and so on handle the fit: this is expressed in the traditional language of the analysis of variance rather than of linear models.

Value

An object of class "lm" with the additional class "aov".

WARNING

This implementation is much more basic than that in S; in particular Error is not allowed in the formula and there is no support for multistratum models such as split-plot designs.

Author(s)

B.D. Ripley

See Also

lm,alias

Examples

## From Venables and Ripley (1997) p.210.
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)
npk.aov
summary(npk.aov)
coefficients(npk.aov)


[Package Contents]