Re: [R] Memory limit in Aggregate()

2011-08-03 Thread Guillaume
Hi Peter, Thanks for these information. I used a column concatenating the listBy data to do this aggregation : (I don't know if it's the best solution, but it seems to work). aggregateMultiBy <- function(x, by, FUN){ tableBy = data.frame(by) tableBy$byKey = "" for(colBy in

Re: [R] Memory limit in Aggregate()

2011-08-02 Thread peter dalgaard
On Aug 2, 2011, at 19:09 , Guillaume wrote: > Hi Peter, > > Yes I have a large number of factors in the listBy table. > > Do you mean that aggregate() creates a complete cartesian product of the > "by" columns ? (and creates combinations of values that do not exist in the > orignial "by" table,

Re: [R] Memory limit in Aggregate()

2011-08-02 Thread Guillaume
Hi Peter, Yes I have a large number of factors in the listBy table. Do you mean that aggregate() creates a complete cartesian product of the "by" columns ? (and creates combinations of values that do not exist in the orignial "by" table, before removing them when returning the aggregated table?)

Re: [R] Memory limit in Aggregate()

2011-08-02 Thread peter dalgaard
On Aug 2, 2011, at 17:10 , Guillaume wrote: > Hi Peter, > Thanks for your answer. > I made a mistake in the script I copied sorry ! > > The description of the object : listX has 3 column, listBy has 4 column, and So what is the contents of listBy? If they are all factors with 100 levels, t

Re: [R] Memory limit in Aggregate()

2011-08-02 Thread Guillaume
Hi Peter, Thanks for your answer. I made a mistake in the script I copied sorry ! The description of the object : listX has 3 column, listBy has 4 column, and they have 9000 rows : print(paste("ncol x ", length((listX print(paste("ncol By ", length((listBy print(paste("nrow ", length(

Re: [R] Memory limit in Aggregate()

2011-08-02 Thread peter dalgaard
On Aug 2, 2011, at 11:45 , Guillaume wrote: > Dear all, > I am trying to aggregate a table (divided in two lists here), but get a > memory error. > Here is the code I'm running : > > sessionInfo() > > print(paste("memory.limit() ", memory.limit())) > print(paste("memory.size() ",