[R] Extracting F and p from aov() - tricksy solution

Mark Myatt mark at myatt.demon.co.uk
Tue May 22 17:57:56 CEST 2001

Liqing Zhang <lzhang at ea.oac.uci.edu> writes:
>I performed an aov() analysis and got the following results:
>            Df Sum Sq Mean Sq F value Pr(>F)
>block         1 0.0040  0.0040  0.3282 0.5672
>Residuals   269 3.2766  0.0122
>Can anyone tell me how to extract the F value column and Pr(>F) column
>from the summary output of aov analysis?

I thought that would be easy but the summary() object of aov() seems to
be an odd beast. Fiddling around I came up with this:

LZ.aov <- summary(aov(breaks ~ wool + tension, data = warpbreaks))
LZ.aov.fp <- cbind(LZ.aov[[1]]$"F value", LZ.aov[[1]]$"Pr(>F)")
colnames(LZ.aov.fp) <- c("F", "p")

All we need now is to get the right row-names. I suppose that will
require a function that will extract the variable names from the


Mark Myatt

r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch

More information about the R-help mailing list