[R] weighted mean and by() with two index
Mike Lawrence
Mike.Lawrence at dal.ca
Tue Apr 14 01:33:35 CEST 2009
Sounds like a job for plyr: http://had.co.nz/plyr
On Mon, Apr 13, 2009 at 7:56 PM, Dong H. Oh <r.arecibo at gmail.com> wrote:
> Hi expeRts,
>
> I would like to calculate weighted mean by two factors.
>
> My code is as follows:
>
> R> tmp <- by(re$meta.sales.lkm[, c("pc", "sales")],
> re$meta.sales.lkm[, c("size", "yr")], function(x)
> weighted.mean(x[,1], x[,2]))
>
> The result is as follows:
> R> tmp
> size: micro
> yr: 1994
> [1] 1.090
> ------------------------------------------------------------
> size: small
> yr: 1994
> [1] 1.135
> ------------------------------------------------------------
> size: medium
> yr: 1994
> [1] 1.113
> ------------------------------------------------------------
> size: large
> yr: 1994
> [1] 1.105
> ------------------------------------------------------------
> size: micro
> yr: 1995
> [1] 1.167
> ------------------------------------------------------------
> size: small
> yr: 1995
> [1] 1.096
> ------------------------------------------------------------
> size: medium
> yr: 1995
> [1] 1.056
> ....
> ....
>
> But the form I want to get is as follows:
> 1994 1995 1996 .....
> micro 1.090 1.167 .............
> small 1.135 1.096
> medium 1.113 1.056 .... ........
> large 1.105 ....... ...........
>
> That is, the result should be tabularized.
> How can I get the above form directly? (I don't want to modify tmp with
> as.vector() and matrix() to get the result)
>
> Thank you in advance.
>
> --------------------------------------------------------------------------
> Donghyun Oh
> CESIS, KTH
> --------------------------------------------------------------------------
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> 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.
>
--
Mike Lawrence
Graduate Student
Department of Psychology
Dalhousie University
Looking to arrange a meeting? Check my public calendar:
http://tr.im/mikes_public_calendar
~ Certainty is folly... I think. ~
More information about the R-help
mailing list