Hi there,
The tool to learn for this is the cast function using the reshape package.
In your example you have more then one value for RTL, which you should think
of how to account for.
But basically, here is a solution to what you asked for (assuming I
understood you correctly)
require(reshape)
#?cast
cast(EmpTotCt.Zn.., Taz ~ ClusterType , value = "TotEmp", mean, fill
= 0)
Best,
Tal
----------------Contact
Details:-------------------------------------------------------
Contact me: Tal.Galili@gmail.com | 972-52-7275845
Read me: www.talgalili.com (Hebrew) | www.biostatistics.co.il (Hebrew) |
www.r-statistics.com (English)
----------------------------------------------------------------------------------------------
On Fri, May 28, 2010 at 3:14 AM, LCOG1 <jroll@lcog.org> wrote:
>
> Hello All,
> Please consider the following:
>
> TotEmp<-c(19,6,1,1,8,44,2,33,48,1)
>
>
ClusterType<-c("AGF","CNS","OSV","RTL","RTL","TRN","REL","ACC_CLUST","RTL","WHL")
> Taz<-c(0,0,0,100,100,100,101,101,102,103)
>
>
>
AllCtTypes_<-c("AGF","CNS","OSV","RTL","TRN","REL","ACC_CLUST","WHL","ADM_CLUST",
>
>
"HLH","HLH_CLUST","ACC","RTL_CLUST","MFG","ADM","MFG_CLUST","CNS_CLUST","PRF","PUB",
>
"FIN","INF_CLUST","INF","EDU_CLUST","REC","EDU",
> "MNG","UTL","MIN")
> #Build data frame
> EmpTotCt.Zn..<-data.frame(TotEmp,ClusterType,Taz)
> #Reverse rows to columns
> EmpTotCt.Zn2..<-as.data.frame(t(as.matrix(EmpTotCt.Zn..)))
>
>
> "EmpTotCt.Zn.." is a data frame that i would like to alter by
adding new
> columns and input 0s where no values exist. I tried the line below as its
> the only way i know of switching columns to rows but its far from what i am
> looking for. So "EmpTotCt.Zn.." returns
>
> TotEmp ClusterType Taz
> 1 19 AGF 0
> 2 6 CNS 0
> 3 1 OSV 0
> 4 1 RTL 100
> 5 8 RTL 100
> 6 44 TRN 100
> 7 2 REL 101
> 8 33 ACC_CLUST 101
> 9 48 RTL 102
> 10 1 RTL 103
>
> But what i want is to return the below:
>
> AGF CNS OSV RTL RTL TRN REL ACC_CLUST
> RTL
> 0 19 6 1 0 0 0 0 0
> 0
> 100 0 0 0 1 8 44 0 0
> 0
> 101 0 0 0 0 0 0 2 33
> 0
> 102 0 0 0 0 0 0 0 0
> 48
> 103 0 0 0 0 0 0 0 0
> 1
>
> Where the rows represent "Taz" and the columns represent ALL
> "ClusterType"'s
> found in "AllCtTypes_", this would mean that the above output
example would
> have many more columns with 0s in all the rows since there are no
> observations. Its taken me a while to get the data into the above format
> and im afraid im stuck with how to get it into the final computational
> format, so hopefully someone can help.
>
> Perhaps i have to build a blank data frame with the appropriate dimensions
> first but i am not sure if this is the most efficient way of accomplishing
> this.
>
> Thanks in advance.
>
>
> --
> View this message in context:
>
http://r.789695.n4.nabble.com/Data-frame-manipulation-tp2233932p2233932.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]]