[R] expand.grid function

Charilaos Skiadas cskiadas at gmail.com
Mon Dec 24 05:18:08 CET 2007

Hi Derek,
On Dec 23, 2007, at 10:59 PM, dxc13 wrote:

> useR's,
> I have used expand.grid() several times and like the results it  
> gives me.  I
> am now trying something with it that I have not been able to get to  
> work.
> For any n column matrix I would like to run this function on those  
> n columns
> and store the results.
> For example, if my matrix has 1 column then this is just expand.grid 
> (x =
> column1).  If my matrix has two columns, then I want expand.grid(x =
> column1, y = column2), and so on for any number of columns...

Does this do what you want  (x is the matrix)?

do.call(expand.grid, as.data.frame(x))

> In a program I am writing, the user can specify any matrix.  Does  
> anyone
> know of a way for R to calculate this based on what the input  
> matrix is?
> e.g. if this user gives a 3 column matrix, I want to be able to  
> perform
> expand.grid() on these 3 columns without having to hard code it b/c  
> I want
> to have this small function embedded in my code and the results  
> stored as a
> variable.
> If this isn't clear, I can try to be more detailed.  Thank you for any
> thoughts.
> Derek

Haris Skiadas
Department of Mathematics and Computer Science
Hanover College

More information about the R-help mailing list