This is great. Thanks

----- Original Message -----
From: Henrik Bengtsson <hb@stat.berkeley.edu>
To: Jeff Newmiller <jdnewmil@dcn.davis.ca.us>
Cc: rajeshj@cse.iitm.ac.in, r-help <r-help@r-project.org>
Sent: Tue, 14 Sep 2010 12:27:38 +0530 (IST)
Subject: Re: [R] dataframe of dataframes?

You can create an empty matrix (or even array) of list elements and
then assign your data frames to whichever element you want.  Example:

# Allocate empty matrix...
> x <- matrix(list(), nrow=2, ncol=3);
# ...alternatively
> x <- array(list(), dim=c(2,3));
> print(x);
	 [,1] [,2] [,3]
[1,] NULL NULL NULL
[2,] NULL NULL NULL

To assign a data frame to one of the elements, make sure to use double
bracket notation, e.g.

> x[[1,1]] <- data.frame(a=1, b=2:4);
> x[[1,2]] <- data.frame(c=2:3);
> x[[2,3]] <- data.frame(x=1, y=2:4);
> print(x);
	 [,1]   [,2]   [,3]
[1,] List,2 List,1 NULL
[2,] NULL   NULL   List,2

Same is needed to extract an element, e.g.

> str(x[[2,3]]);
'data.frame':   3 obs. of  2 variables:
$ x: num  1 1 1
$ y: int  2 3 4

Compare with:

> str(x[2,3]);
List of 1
$ :'data.frame':	   3 obs. of  2 variables:
  ..$ x: num [1:3] 1 1 1
  ..$ y: int [1:3] 2 3 4

> str(x[1,]);
List of 3
$ :'data.frame':	   3 obs. of  2 variables:
  ..$ a: num [1:3] 1 1 1
  ..$ b: int [1:3] 2 3 4
$ :'data.frame':	   2 obs. of  1 variable:
  ..$ c: int [1:2] 2 3
$ : NULL

My $.02

/Henrik

On Mon, Sep 13, 2010 at 11:18 PM, Jeff Newmiller
wrote:
> rajeshj@cse.iitm.ac.in wrote:
>>
>> Hi,
>>
>> I create several dataframes in a nested loop and would like to maintain
>> them in a matrix form with each dataframe represented by the row and the
>> column. How can I do this?
>>
>
> You can't, at least as you describe it.
>
> However, you can add a column for "row ID" and a column for "column ID" to
> each of your result data frames and "rbind" them together.
>
> It is also possible to create lists of lists... but I believe the single
> augmented dataframe will be way more useful in the long run.
>
> ______________________________________________
> 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]]

