Hi, there

Sorry- I excluded some example code in the haste of my original e-mail. Please find it included below. Note, however, that the elements in the list in the summary output appear to be the anova tables themselves- what I need to do is get inside the anova tables (execute the code below to see what I mean...)

Thanks again,

Mike

#example code to illustrate my inability to get at a mean square in anova output from
# models of the form summary(aov(y ~ x1 + Error(x1/x2)))

y<-rnorm(30,10)
x1<-rep(1:2, each=15)
x2<-rep(1:3, each=1, times=10)

dat<-data.frame(y, x1, x2)
dat

ex.aov<-aov(y ~ x1 + Error(x1/x2))

ex.sum<-summary(ex.aov)
ex.sum

#gets you the first list in the element, which is anova output for x1 caluclated with nested factor x2 in x1

ex.sum[1]

ex.sum[1]$Error #this is equivalent to...

ex.sum[[1]]

# since ex.sum is a list composed of anova tables, apparently the element in the list #is the anova table itself. The question is, how do you get at the elements in each table
#(i.e., Mean Square?)


Prof Brian Ripley wrote:
The output is of class "summary.anovalist" so (hint, hint) it is a list.

Try [[ ]] to get list elements.

Without a reproducible example (see the footer and the posting guide) it is not possible to show you working code.


On Thu, 5 Apr 2007, Michael D. Rennie wrote:


Hi, there

I'm trying to get the value of the Mean Square from the ANOVA model summary that comes from specifying the error term, and am wondering if one can actually do this ( I know it's possible when using anova(lm) objects and the like, but I'm having a tough time with it under this framework). There does appear to be some indexing in the output of this type, but perhaps not enough to obtain single values? Here's what I've been able to do so far with some example code:

density.aov<-aov(density ~ substrate + Error(substrate/tile))

anov1<-(summary(density.aov))
print(anov1)

Error: substrate
        Df Sum Sq Mean Sq
substrate  2 1282.4   641.2

Error: substrate:tile
        Df  Sum Sq Mean Sq F value Pr(>F)
Residuals 27 225.700   8.359 Error: Within
        Df Sum Sq Mean Sq F value Pr(>F)
Residuals 60 640.00   10.67
anov1[1]
$`Error: substrate`
        Df Sum Sq Mean Sq
substrate  2 1282.4   641.2

anov1[2]
$`Error: substrate:tile`
        Df  Sum Sq Mean Sq F value Pr(>F)
Residuals 27 225.700   8.359 And, I can get

anov1[1]$Error
        Df Sum Sq Mean Sq
substrate  2 1282.4   641.2

a<-anov1[1]$Error

and then tried to get at elements in that, trying things like

a$Mean

or

a[,2]

but all return

Error:  incorrect number of dimensions

probably because

length(a)
[1] 1

Does anyone have any reccomendations on how to go any further here?

Cheers,

Mike




--
Michael D. Rennie
Ph.D. Candidate
University of Toronto at Mississauga
3359 Missisagua Rd. N. Mississauga, ON L5L 1C6
Ph: 905-828-5452 Fax: 905-828-3792
www.utm.utoronto.ca/~w3rennie

______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to