LCOG1
2010-Jun-07 19:20 UTC
[R] Transforming list to data frame with corresponding columns
Hi all, Consider the following. a<-list(c("MHsub","MHsub","SFD","Duplex")) b<-list(c("MHsub","MHsub","SFD")) c<-list(c("MHpark","SFD","SFD")) d<-list(c("MultiFam","MultiFam","MultiFam","Duplex")) all<-list(a,b,c,d) names(all)<-c("5","6","7","8") all2<-list() for(i in 1:length(all)){ all2[[i]]<-table(unlist(all[i])) } names(all2)<-names(all) What i want to do is to put each of the elements of the list into a data frame where the element represents a row and each vector is accounted for, for all types within the entire list. So where there isnt a particular vector a 0 is noted so that the final product looks like this: SFD Mhsub Duplex MultiFam 5 1 1 1 0 6 1 1 0 0 7 1 1 0 0 8 0 0 1 1 Thanks for the insights. -- View this message in context: http://r.789695.n4.nabble.com/Transforming-list-to-data-frame-with-corresponding-columns-tp2246423p2246423.html Sent from the R help mailing list archive at Nabble.com.
Henrique Dallazuanna
2010-Jun-07 21:07 UTC
[R] Transforming list to data frame with corresponding columns
Try this: `colnames<-`(do.call(rbind, lapply(all2, '[', nm <- unique(unlist(sapply(all2, names))))), nm) On Mon, Jun 7, 2010 at 4:20 PM, LCOG1 <jroll@lcog.org> wrote:> > Hi all, > Consider the following. > > > a<-list(c("MHsub","MHsub","SFD","Duplex")) > b<-list(c("MHsub","MHsub","SFD")) > c<-list(c("MHpark","SFD","SFD")) > d<-list(c("MultiFam","MultiFam","MultiFam","Duplex")) > > all<-list(a,b,c,d) > names(all)<-c("5","6","7","8") > all2<-list() > for(i in 1:length(all)){ > all2[[i]]<-table(unlist(all[i])) > } > names(all2)<-names(all) > > What i want to do is to put each of the elements of the list into a data > frame where the element represents a row and each vector is accounted for, > for all types within the entire list. So where there isnt a particular > vector a 0 is noted so that the final product looks like this: > > > SFD Mhsub Duplex MultiFam > 5 1 1 1 0 > 6 1 1 0 0 > 7 1 1 0 0 > 8 0 0 1 1 > > Thanks for the insights. > > -- > View this message in context: > http://r.789695.n4.nabble.com/Transforming-list-to-data-frame-with-corresponding-columns-tp2246423p2246423.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. >-- Henrique Dallazuanna Curitiba-Paraná-Brasil 25° 25' 40" S 49° 16' 22" O [[alternative HTML version deleted]]