

   CCoommppuuttee TTaabblleess ooff RReessuullttss ffrroomm aann AAoovv MMooddeell FFiitt..

        model.tables(x, ...)
        model.tables.aov(x, type = "effects", se = FALSE, cterms)
        model.tables.aovlist(x, type = "effects", se = FALSE, ...)

   AArrgguummeennttss::

          x: a model object, usually produced by `aov'

       type: type of table: currently only `"effects"' and
             `"means"' are implemented.

         se: should standard errors be computed?

     cterms: A character vector giving the names of the terms
             for which tables should be computed. The default
             is all tables.

   DDeessccrriippttiioonn::

        Computes summary tables for model fits, especially com-
        plex `aov' fits.

   DDeettaaiillss::

        For `type = "effects"' give tables of the coefficients
        for each term, optionally with standard errors.

        For `type = "means"' give tables of the mean response
        for each combinations of levels of the factors in a
        term.

   VVaalluuee::

        An object of class `"tables.aov"', as list which may
        contain components

     tables: A list of tables for each requested term.

          n: The replication information for each term.

         se: Standard error information.

   WWAARRNNIINNGG::

        The implementation is incomplete, and only the simpler
        cases have been tested thoroughly.

   AAuutthhoorr((ss))::

        B.D. Ripley

   SSeeee AAllssoo::

        `aov'

   EExxaammpplleess::

        ## 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)
        model.tables(npk.aov, "means", se=T)

        ## as a test, not particularly sensible statistically
        options(contrasts=c("contr.helmert", "contr.treatment"))
        npk.aovE <- aov(yield ~  N*P*K + Error(block), npk)
        model.tables(npk.aovE,  se=T)
        model.tables(npk.aovE, "means")

