Hi,

Try this:

x="var1    var2   var3
a         x        10
b         y        20
a         z        10
b         z        20
a         z        10
b         z        20"

yourdata=read.table(textConnection(x),header=TRUE)
attach(yourdata)

res=tapply(var3,yourdata[,-3],sum)  # With tapply!
res[is.na(res)]<-0
res
var2
var1  x  y  z
   a 10  0 20
   b  0 20 40

See also ?tapply.


HTH,

Jorge


On Fri, Apr 25, 2008 at 5:54 PM, ppaarrkk <[EMAIL PROTECTED]> wrote:

>
> Can somebody tell me how to do the equivalent of a pivot table in R ?
>
>
> For example, if I have :
>
> var1    var2   var3
> a         x        10
> b         y        20
> a         z        10
> b         z        20
> a         z        10
> b         z        20
>
> I could have :
>
>          x       y       z
> a        1       0       2
> b        0       1       2
>
> where entries in the table are counts of var3.
>
>          x       y       z
> a        10       0       20
> b        0       20       40
>
> where entries are sums of var3.
>
>
>
> I would expect it to be tapply(), but I can't see how it would be done.
>
>
> Any suggestions please.
>
>
> --
> View this message in context:
> http://www.nabble.com/Equivalent-of-Excel-pivot-tables-in-R-tp16906289p16906289.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.
>

        [[alternative HTML version deleted]]

______________________________________________
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.

Reply via email to