[R] ANOVA with means and SDs as input

Emmanuel Charpentier charpent at bacbuc.dyndns.org
Fri Jun 26 23:57:47 CEST 2009


Le jeudi 25 juin 2009 à 12:15 +0200, Sebastian Stegmann a écrit :
> Dear R-community,
> 
> I'm struggling with a paper that reports only fragmented results of a
> 2by2by3 experimental design. However, Means and SDs for all cells are given.
> 
> Does anyone know a package/function that helps computing an ANOVA with only
> Means and SDs as input (resulting in some sort of effect size and
> significance test)?
> 
> The reason why I'm interested is simple: I'm conducting a meta-analysis. If
> I included only what the authors would like to show the world, the results
> would be somewhat biased...

What you aim to do is not, as far as I can tell, possible using
already-programmed solutions in R packages. Some packages offer very
close solutions (e. g. lme()) but lack some necessary options (e. g. the
ability to fix intra-level variance in lme() : varFixed() works as
documented, not as what its name suggests...).

Why not use some established meta-analysis package such as meta or
rmeta ? You may have to recompute some variances or effect sizes, but it
can usually be done.

If you aim to go a bit farther (i. e. more than 2-groups comparisons),
the newly-released metafor package seems quite interesting. Wolfgang
Viechtbauer aimed to offer a tool for meta-regression, and the current
stage of the package (0.5.something IIRC) seems to be quite useable, if
somewhat counter-intuitive in places.

I'd recommend to have a look at it. WV didn't think useful to include
the vignettes and documentation for mima(), predecessor of metafor,
which explains quite nicely the motivation and algorithms he used. Too
bad... However, this documentation is still available on his Web site.
Be aware that the current "main interface" to the rma() function
(workhorse of the package) does not (yet ?) follow the usual format for
regression-like functions common to many R packages (the (formula, data,
subset, etc...) format). For example, you may make meta-regression, but
you'll have to code the model matrix yourself. Similarly, the necessary
bricks for (e. g.) indirect comparisons are here, but you'll have to
build them yourself (bring your wheelbarrow an some mortar...).

An alternative to be seriously considered : Bayesian modeling.
Meta-analysis is one of the rare medical domains where journal reviewers
won't immediately reject a paper at the sight of the B***sian word... As
far as I know, psychological journals are not as asinine. Here again,
some manual work will be in order. Some tutorial material is readily
available (google "Bayesian meta analysis tutorial", which should lead
you to the various "Statistics in Medicine" tutorials, among other
things).

> I've combed through the web and my various books on R, but it's not that
> easy to find. Or is it?

Variance analysis through manual decomposition of sum of squares ?
Hugh ... I did that when I first learned anova(so long a time ago that I
am uncomfortable to think of it. In these times, even a pocket
calculator was too expensive for a random student (therefore forbidden
in exams), and I learned to cope with slide rule...). Tiring and messy.
Furthermore, "manual" algorithms (i. e. simple, non-iterative
algorithms) exists only for the simplest (e. g. one-way anova) or ideal
(e. g. balanced two-way anova with equal group sizes) cases ;
furthermore, modern critiques of the bases of such works cast some
doubts on their foundations (e. g. random- and mixed-effect anova)...

Therefore, the art is fast forgotten, if not totally lost. If you
insist, I might try to unearth my copy of Winer's handbook (ca. 1959)
and look up specific questions.

HTH,

					Emmanuel Charpentier




More information about the R-help mailing list