[R] problems with for loop
Chuck Cleland
ccleland at optonline.net
Tue Jan 16 16:25:44 CET 2007
Jorge Lampurlanes Castel wrote:
> Hello,
>
> With this program I try to repeat analysis for different years. The
> results of the analysis are not printed when in the loop, except for the
> year sequence. What is wrong?
>
> Thanks a lot.
>
> for (i in 92:99){
> cat("\n",
> "=============================================================\n",
> "YEAR =",i,"\n",
> "=============================================================\n"
> )
> canos1 <- subset (canos, canos$YEAR==i)
> LinearModel.1 <- lm(MM_P ~ BLOC + TIL, data=canos1)
> summary(LinearModel.1)
> Anova(LinearModel.1, type="II")
> Anova(LinearModel.1, type="III")
>
> }
You might consider using by() rather than a loop as follows:
library(car)
by(canos, canos$YEAR,
function(x){fm <- lm(MM_P ~ BLOC + TIL, data=x)
ans <- list(summary(fm), Anova(fm, type="II"), Anova(fm, type="III"))
}
)
The result can be conveniently stored as a list of lists.
--
Chuck Cleland, Ph.D.
NDRI, Inc.
71 West 23rd Street, 8th floor
New York, NY 10010
tel: (212) 845-4495 (Tu, Th)
tel: (732) 512-0171 (M, W, F)
fax: (917) 438-0894
More information about the R-help
mailing list