[R] pivot table in R
Romain Francois
rfrancois at mango-solutions.com
Tue Jan 29 13:17:10 CET 2008
Hi Pietro,
Depending on the actual structure you want in the output, you can use
some of the functions in the apply family, particularly tapply,
aggregate, or by. Something like :
R> tapply( d[["no_of_accidents" ]], d[[ "sex" ]], sum )
F M
34 83
R> aggregate( d["no_of_accidents" ], d[ "sex" ], sum )
sex no_of_accidents
1 F 34
2 M 83
R> by( d[["no_of_accidents" ]], d[[ "sex" ]], sum )
INDICES: F
[1] 34
------------------------------------------------------------
INDICES: M
[1] 83
Cheers,
Romain
--
Mango Solutions
data analysis that delivers
R for finance training course :: 3 days :: London (27-29/02/2008)
http://www.mango-solutions.com/services/rtraining/r_finance.html
pietro.parodi at aon.co.uk wrote:
> Hello,
>
> I'm struggling with an elementary problem with R. I have a simple data
> frame such as this one giving the number of accidents subdivided by sex,
> age and region.
>
> sex age region no_of_accidents
>
> F young north 10
> F young south 12
> F old north 5
> F old south 7
> M young north 24
> M young south 30
> M old north 12
> M old south 17
>
> and I would like to build a pivot table, e.g. obtaining the sum of the
> number of accidents for each sex:
>
> sex age region no_of_accidents
>
> F (any) (any) 34
> M (any) (any) 83
>
> but I can't seem to obtain this result simply in R, except by embarking in
> complicated "for" loops.
>
> I have checked the documentation on such functions as "table()" and the
> documentation on "An introduction to R" but couldn't solve the problem.
> Could you please help me with this?
>
> Cheers
>
> Pete
>
>
> PLEASE CONSIDER THE ENVIRONMENT BEFORE PRINTING THIS E-MAIL
>
> For Aon’s standard conditions associated with this e-mail please visit http://www.aon.com/uk/en/email-footer/aon-limited.jsp
> Aon Limited
> Registered Office: 8 Devonshire Square, London EC2M 4PL
> Registered in London No. 210725 . VAT Registration No. 480 8401 48
>
> Aon Limited is authorised and regulated by the Financial Services Authority in respect of insurance mediation activities only.
>
> [[alternative HTML version deleted]]
>
>
More information about the R-help
mailing list