[R] Running an ANOVA with a BY

Tobias Verbeke tobias.verbeke at gmail.com
Mon Sep 28 18:58:24 CEST 2009


baxterj wrote:
> I have a simple 1 way anova coded like
> 
> summary(ANOVA1way <- aov(Value ~ WellID, data = welldata))
> 
> How can I use the BY function to do this ANOVA for each group using another
> variable in the dataset??  I tried coding it like this, but it doesn't seem
> to work.
> 
> summary(ANOVA1way <- by(welldata, Analyte, function(x) aov(Value ~ WellID,
> data = welldata)))
> 
> In SAS I would code it like this:
> Proc sort data=welldata; by analyte; run;
> Proc glm data=welldata;
> by analyte;
> class wellid;
> model value = wellid;
> run;

Look at the plyr package for a general solution to
this type of problems:

http://cran.r-project.org/web/packages/plyr/index.html

and its introductory guide on the package home page:

http://had.co.nz/plyr/

HTH,
Tobias




More information about the R-help mailing list