for loop, error in model frame.default ... variable lengths differ
On Mon, May 21, 2012 at 2:00 AM, peter dalgaard <pdalgd at gmail.com> wrote:
[snip]
What the poster probably wanted was something in the vein of
nm <- colnames(airquality)[1] ff <- formula(bquote(.(as.name(nm))~Month)) aggregate(ff, airquality, mean, na.rm=T)
?Month ? ?Ozone 1 ? ? 5 23.61538 2 ? ? 6 29.44444 3 ? ? 7 59.11538 4 ? ? 8 59.96154 5 ? ? 9 31.44828
or perhaps to use an implicit loop (since looping seemed to be part of it all):
results <- lapply(c("Ozone", "Solar.R"), function(n) {
aggregate(. ~ Month, airquality[, c(n, "Month")], mean, na.rm = TRUE)
})
## print results
results
## untested code based on OPs original example
vars <- colnames(df)[c(10,12,16,18,20,21,24:29,45)]
results <- lapply(vars, function(n) {
aggregate(. ~ x1 + x2 + x3, df[, c(n, "x1", "x2", "x3")], mean, na.rm = TRUE)
})
## print results
results
Cheers,
Josh
-- Peter Dalgaard, Professor Center for Statistics, Copenhagen Business School Solbjerg Plads 3, 2000 Frederiksberg, Denmark Phone: (+45)38153501 Email: pd.mes at cbs.dk ?Priv: PDalgd at gmail.com
______________________________________________ R-help at 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.
Joshua Wiley Ph.D. Student, Health Psychology Programmer Analyst II, Statistical Consulting Group University of California, Los Angeles https://joshuawiley.com/