David, many thanks. Did something get ommitted from your line?: ddply(x ,.(myweek), summarize, m1=weighted.mean(var1,myweight), m2=weighted.mean(var2,myweight))
Because it just reproduces x - in a somewhat different order... Thank you! Dimitri On Tue, Jul 17, 2012 at 9:22 PM, David Freedman <d...@cdc.gov> wrote: > If there are many variables, I'd then suggest the data.table package: > > library(data.table) > dt=data.table(x) > dt[,lapply(.SD, function(x)weighted.mean(x,myweight)), keyby=c('group', > 'myweek')] > > The '.SD' is an abbreviation for all the variables in the data table > (excluding the grouping variables). There's an .SDcols= 'variables of > interest' option if you want to limit the dozens of variables to only some > of them. Or, in the data.table(x) statement, you could limit the created > data table to only the variables your interested in. > > As an added benefit, the data.table approach is amazingly fast (particularly > when there are numerous grouping categories) > > > -- > View this message in context: > http://r.789695.n4.nabble.com/weighted-mean-by-week-tp4636814p4636825.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. -- Dimitri Liakhovitski marketfusionanalytics.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.