[R] Data frame to list

Greg Snow Greg.Snow at imail.org
Thu Jul 28 22:27:47 CEST 2011


?split

-- 
Gregory (Greg) L. Snow Ph.D.
Statistical Data Center
Intermountain Healthcare
greg.snow at imail.org
801.408.8111


> -----Original Message-----
> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-
> project.org] On Behalf Of Jonathan Greenberg
> Sent: Thursday, July 28, 2011 2:14 PM
> To: r-help
> Subject: [R] Data frame to list
> 
> I'm hoping this is an easy problem that I'm missing something obvious.
> Given:
> 
> x=c(1,1,1,2,2,3,3,3)
> y=c(1:length(x))
> dataframe=data.frame(x,y)
> 
> I would like to convert this to a list for use with certain functions,
> where each entry of the list is a subsetted dataframe based on
> dataframe$x
> 
> I can do this "brute force" by a for-next loop:
> 
> unique_x=unique(dataframe$x)
> unique_x_N=length(unique_x)
> dataframe_to_list=vector(mode="list",length=unique_x_N)
> for(i in 1:unique_x_N)
> {
> 	dataframe_to_list[[i]]=subset(dataframe,x==unique_x[i])
> 
> }
> 
> My R-gut is telling me there's a much more efficient way of doing this
> -- is it right?
> 
> --j
> 
> ______________________________________________
> 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