summary.aov(object, intercept = F, split = NULL, expand.split = T) summary.aovlist(object, split = NULL, expand.split = T)
summary.aovlist returns an object of class "listof" which contains objects of class "anova".
The split argument is particularly useful for testing significance of polynomial terms. For instance, suppose the 4 level ordered factor Sulphur is fitted using the default contrasts contr.poly. Specifying split=list(Sulphur=list(L=1,Q=2,C=3) in the call to summary, will give a summary table with 4 lines summarising the Sulphur main effect: a 3 degree of freedom line for the overall effect of Sulphur, then three 1 degree of freedom lines, one for each of the linear, quadratic and cubic contrasts of sulphur. The sum of squares in the 3 one degree of freedom lines add up to the 3 degree of freedom term. Any higher order terms for which Sulphur is marginal will be similarly split. Alternatively, specifying split=list(Sulphur=list(L=1,rem=2:3) will give a summary table with 3 lines summarising the Sulphur main effect: a 3 degree of freedom line for the overall effects of Sulphur, then a 1 degree of freedom line for the linear effect and a 2 degree of freedom line for the remainder.
# Reference Cochran and Cox, pg 164 # 3x3 factorial split into linear and quadratic components P <- ordered(rep(1:3, rep(3,3))) N <- ordered(rep(1:3,3)) Plants <- c(449, 413, 326, 409, 358, 291, 341, 278, 312)# Convert treatment totals over 12 Replicates to treatment means Plants <- Plants/12 cox164.df <- data.frame(Plants, P, N) cox164.aov <- aov(Plants ~ N * P, cox164.df, weight = rep(12,9), qr = T)
summary(cox164.aov)
# Produces the following output: Df Sum of Sq Mean Sq N 2 1016.667 508.3333 P 2 917.389 458.6944 N:P 4 399.278 99.8194
# Dividing both P and N terms into their linear and quadratic part. # Both main terms and interaction are split summary(cox164.aov, split = list(P = list(lin = 1, quad = 2), N = list(lin = 1, quad = 2)))
# Produces the following output: Df Sum of Sq Mean Sq N 2 1016.667 508.333 N: lin 1 1012.500 1012.500 N: quad 1 4.167 4.167 P 2 917.389 458.694 P: lin 1 917.347 917.347 P: quad 1 0.042 0.042 N:P 4 399.278 99.819 N:P: lin.lin 1 184.083 184.083 N:P: quad.lin 1 152.111 152.111 N:P: lin.quad 1 49.000 49.000 N:P: quad.quad 1 14.083 14.083
# Dividing only higher order terms, note that protection of the : in # the list name and that the name 'P:N' will not work summary(cox164.aov, split = list('N:P' = list(lin.lin = 1, quad.terms = 2:4)))
# Produces the following output: Df Sum of Sq Mean Sq N 2 1016.667 508.3333 P 2 917.389 458.6944 N:P 4 399.278 99.8194 N:P: lin.lin 1 184.083 184.0833 N:P: quad.terms 3 215.194 71.7315