[R] Reading name-value data
Hadley Wickham
hadley at rice.edu
Fri Jul 29 01:30:34 CEST 2011
Use plyr::rbind.fill? That does match up columns by name.
Hadley
On Thu, Jul 28, 2011 at 5:23 PM, Stavros Macrakis <macrakis at alum.mit.edu> wrote:
> I have a file of data where each line is a series of name-value pairs, but
> where the names are not necessarily the same from line to line, e.g.
> a=1,b=2,d=5
> b=4,c=3,e=3
> a=5,d=1
> I would like to create a data frame which lines up the data in the
> corresponding columns. In this case, this would be
> data.frame( a = (1, NA, 4), b = (2, 4, NA), c = (NA, 3, NA), d = (5, NA,
> 1), e = (NA, 3, 1) )
> One way I can think of doing this is to read in the data as one 'long' data
> frame per line with a unique ID, e.g. line one becomes
> cbind(id=1,data.frame(variable=c('a','b','d'),value=c(1,2,5)))
> then rbind all the lines and use the reshape package function 'cast'.
> Is there a more straightforward way? (I'd have thought rbind would line up
> columns by name, but it doesn't.)
> -s
>
> --
> You received this message because you are subscribed to the Google Groups
> "manipulatr" group.
> To post to this group, send email to manipulatr at googlegroups.com.
> To unsubscribe from this group, send email to
> manipulatr+unsubscribe at googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/manipulatr?hl=en.
>
--
Assistant Professor / Dobelman Family Junior Chair
Department of Statistics / Rice University
http://had.co.nz/
More information about the R-help
mailing list