[R] creating table of averages
Adam D. I. Kramer
adik-rhelp at ilovebacon.org
Tue Sep 9 20:12:36 CEST 2008
Maybe something like this:
by(df[,c(77,81,86,90,94,98,101,106)],df$category,apply,2,mean)
...which would then need to be reformatted into a data frame (there is
probably an easy way to do this which I don't know).
aggregate seems like a more reasonable choice, but the function for
aggregate must return scalars, not rows...tapply doesn't take data.frame
inputs. Maybe someone else has a suggestion?
--Adam
On Tue, 9 Sep 2008, Lawrence Hanser wrote:
> Dear Colleagues,
>
> I have a dataframe with variables:
>
> [1] "ID" "category" "a11" "a12"
> "a13" "a21"
> [7] "a22" "a23" "a31" "a32"
> "b11" "b12"
> [13] "b13" "b21" "b31" "b32"
> "b33" "b41"
> [19] "b42" "c11" "c12" "c21"
> "c22" "c23"
> [25] "c31" "c32" "c33" "d11"
> "d12" "d13"
> [31] "d14" "d21" "d22" "d23"
> "d24" "d25"
> [37] "d31" "d32" "d33" "e11"
> "e12" "e13"
> [43] "e21" "e22" "e23" "e31"
> "e32" "e33"
> [49] "f11" "f12" "f13" "f14"
> "f21" "f22"
> [55] "f23" "f24" "g11" "g12"
> "g13" "g14"
> [61] "g21" "g22" "g23" "g24"
> "g31" "g32"
> [67] "g33" "g41" "g42" "g43"
> "h11" "h12"
> [73] "h13" "h21" "h22" "h23"
> "C1.Employ" "SC11.Ops"
> [79] "SC12.Unit" "SC13.Nonadvers" "C2.Enterprise" "SC21.Structure"
> "SC22.Gov" "SC23.Culture"
> [85] "SC24.Stratcomm" "C3.Manage" "SC31.Resource" "SC32.Change"
> "SC33.Continue" "C4.Stratthink"
> [91] "SC41.Vision" "SC42.Decision" "SC43.Adapt" "C5.Lead"
> "SC51.Develop" "SC52.Care"
> [97] "SC53.Diversity" "C6.Foster" "SC61.Teams" "SC62.Negotiate"
> "C7.Embody" "SC71.Ethical"
> [103] "SC72.Follower" "SC73.Warrior" "SC74.Develop" "C8.Comm"
> "C81.Speak" "C82.Listen"
> [109] "OverallImp"
>
> The variable "category" has four values: Regular, CCM, CFM, and Other
>
> I'd like to create a table like this to feed into barplot2:
>
> row.name C1.Employ C2.Enterprise C3.Manage C4.Stratthink C5.Lead
> C6.Foster C7.Embody C8.Comm
> Regular 3.68 4.27 3.22
> etc......
> CCM 4.32 4.56 etc.....
> CFM etc.........
> Other etc.........
>
> So far, I have been able to get this far:
>
> >
> mean(subset(impchiefs08,category=="Regular",select=c(C1.Employ,C2.Enterprise,C3.Manage,C4.Stratthink,C5.Lead,C6.Foster,C7.Embody,C8.Comm
> )))
> C1.Employ C2.Enterprise C3.Manage C4.Stratthink C5.Lead
> C6.Foster C7.Embody C8.Comm
> 3.600000 3.851111 4.482222 4.346667 4.608889
> 4.444444 4.602222 4.493333
>>
>
> But I am stumped as to how to get what I want.
>
> Thanks in advance.
>
> Larry
>
> [[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.
>
More information about the R-help
mailing list