[BioC] limma eBayes: how to determine goodness of fit?
Mark Robinson
mrobinson at wehi.EDU.AU
Fri Jun 1 01:08:00 CEST 2007
Hi Paul.
Some are in "MArrayLM" object, others require a couple commands.
For example, using the data example in lmFit help:
------------
sd <- 0.3*sqrt(4/rchisq(100,df=4))
y <- matrix(rnorm(100*6,sd=sd),100,6)
rownames(y) <- paste("Gene",1:100)
y[1:2,4:6] <- y[1:2,4:6] + 2
design <- cbind(Grp1=1,Grp2vs1=c(0,0,0,1,1,1))
# Ordinary fit
fit <- lmFit(y,design)
fit <- eBayes(fit)
------------
you get recreate what you want in the linear model by the following
1) Residual standard error
> lm.first<-lm(y[1,]~-1+design)
> sqrt(anova(lm.first)["Residuals","Mean Sq"])
[1] 0.2990779
> fit$sigma[1]
Gene 1
0.2990779
2) R-Squared
> sst<-rowSums(y^2)
> ssr<-sst-fit$df.residual*fit$sigma^2
> (ssr/sst)[1]
Gene 1
0.964451
> summary(lm.first)$r.squared
[1] 0.964451
...
4) The F-statistic will change since the variances are moderated,
causing both the statistic to change and the degrees of freedom to
change.
Cheers,
Mark
On 01/06/2007, at 5:38 AM, Paul Shannon wrote:
> A summary of an lm result includes some readily-understood
> goodness of fit information:
>
> 1) Residual standard error
> 2) Multiple R-Squared
> 3) Adjusted R-Squared
> 4) F-statistic
>
> With limma, and eBayes, I deduce (incorrectly?) that efit$F and efit
> $F.p.value
> convey information similar to number 4 above. How about the first
> three
> measures -- is there any way to get equivalent information for the
> linear
> model eFit produces?
>
> Thanks!
>
> - Paul
More information about the Bioconductor
mailing list