Since you did not follow the posting and provide data, here is a way that you can split by race & region and perform operations on each subset of the data frame:
> # test data > n <- 4500 > x <- data.frame(race=sample(c('a','b','c'), n, TRUE), + region=sample(1:9, n, TRUE), values=runif(n)) > # split into race & region > x.s <- split(x, list(x$race, x$region), drop=TRUE) > # average for each subset > sapply(x.s, function(.df) mean(.df$values)) a.1 b.1 c.1 a.2 b.2 c.2 a.3 b.3 c.3 a.4 0.4832214 0.4792623 0.4846138 0.5098792 0.4997666 0.5212905 0.5068535 0.5140438 0.5580490 0.4849455 b.4 c.4 a.5 b.5 c.5 a.6 b.6 c.6 a.7 b.7 0.4952947 0.4639553 0.4798192 0.5030650 0.4889465 0.4839610 0.5080325 0.5176548 0.4788206 0.5300395 c.7 a.8 b.8 c.8 a.9 b.9 c.9 0.4799252 0.4871341 0.4675535 0.4899783 0.5172642 0.4968789 0.5499326 > On Mon, Nov 9, 2009 at 3:18 PM, agm. <amur...@vt.edu> wrote: > > I've looked through ?split and run all of the code, but I am not sure that I > can use it in such a way to make it do what I need. Another suggestion was > using "lists", but again, I am sure that the process can do what I need, but > I am not sure it would work with so many observations. > > I might have been too simple in my code. Let me try to explain it more > clearly: > > I've got a data set of 4500 observations. I have already subset it into > race/ethnicity (which I did by simple code). Now I needed to subset each > race/ethnicity again into 9 separate regions. I again did this by simple > code. > > The problem is now, I need to calculate a percentage for three different > variables for all 9 regions for each race. I was trying to do this through > a loop command. > > So a snippet of my code is : > > names <- c("white", "black", "asian", "hispanic") > for(j in 1:length(names)){ > for(i in 1:9){ > names[j].cd[i].es.wash <- subset(names[j].cd[i], SLUNCH==1) > es.cd[i].names.w <- > sum(names.cd[i].es.wash$NWEIGHT)/sum(names.cd[i]$NWEIGHT) > } > } > > > Maybe that makes it clearer. If not, I apologize. Thanks for the help that > I have already received. It is greatly appreciated. > > Tony > > -- > View this message in context: > http://old.nabble.com/Complicated-For-Loop-%28to-me%29-tp26269479p26272994.html > Sent from the R help mailing list archive at Nabble.com. > > ______________________________________________ > R-help@r-project.org 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. > -- Jim Holtman Cincinnati, OH +1 513 646 9390 What is the problem that you are trying to solve? ______________________________________________ R-help@r-project.org 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.