

aov {base}                                   R Documentation

_F_i_t _a_n _A_n_a_l_y_s_i_s _o_f _V_a_r_i_a_n_c_e _M_o_d_e_l

_D_e_s_c_r_i_p_t_i_o_n_:

     Fit an analysis of variance model by a call to `lm' for
     each stratum.

_U_s_a_g_e_:

     aov(formula, data=NULL, projections=FALSE, contrasts=NULL, ...)
     se.aov(object, n, type = "means")

_A_r_g_u_m_e_n_t_s_:

 formula: A formula specifying the model.

    data: A data frame in which the variables specified in
          the formula will be found. If missing, the vari-
          ables are searched for in the standard way.

projections: Logical flag: should the projections be
          returned?

contrasts: A list of contrasts to be used for some of the
          factors in the formula. These are not used for any
          `Error' term, and supplying contrasts for factors
          only in the `Error' term will give a warning.

     ...: Arguments to be passed to `lm', such as `subset'
          or `na.action'.

_D_e_t_a_i_l_s_:

     This provides a wrapper to `lm' for fitting linear mod-
     els to balanced or unbalanced experimental designs.

     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.

     If the formula contains a single `Error' term, this is
     used to specify error strata, and appropriate models
     are fitted within each error stratum.

     The formula can specify multiple responses.

_V_a_l_u_e_:

     An object of class `c("aov", "lm")' or for multiple
     responses of class `c("maov", "aov", "mlm", "lm")' or
     for multiple error strata of class `"aovlist"'.  There
     are `print' and `summary' methods available for these.

_A_u_t_h_o_r_(_s_)_:

     B. D. Ripley

_S_e_e _A_l_s_o_:

     `lm', `alias', `proj', `model.tables'

_E_x_a_m_p_l_e_s_:

     ## 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) )
     summary(npk.aov)
     coefficients(npk.aov)

     ## as a test, not particularly sensible statistically
     op <- options(contrasts=c("contr.helmert", "contr.treatment"))
     npk.aovE <- aov(yield ~  N*P*K + Error(block), npk)
     npk.aovE
     summary(npk.aovE)
     options(op)# reset to previous

