[R] load ing and saving R objects

Barry Rowlingson B.Rowlingson at lancaster.ac.uk
Tue Jun 14 15:24:53 CEST 2005


Richard Mott wrote:
> Does anyone know a way to do the following:
> 
> Save a large number of R objects to a file (like load() does) but then 
> read back only a small named subset of them . As far as I can see, 
> load() reads back everything.

  Save them to individual files when you generate them?

  for(i in 1:15000){

   m=generateBigMatrix(i)

   filename=paste("BigMatrix-",i,".Rdata",sep='')
   save(m,file=filename)
  }

Note that load will always overwrite 'm', so to load a sample of them in 
you'll need to do something like this:

  bigSamples=list()

  for(i in sample(15000,N)){
    filename=paste("BigMatrix-",i,".Rdata",sep='')
    load(filename)
    bigSamples[[i]]=m
  }

  But there may be a more efficient way to string up a big list like 
that, I can never remember - get it working, then worry about optimisation.

  I hope your filesystem is happy with 15000 objects in it. I would 
dedicate a folder or directory for just these objects' files, since it 
then becomes near impossible to see anything other than the big matrix 
files...


Baz




More information about the R-help mailing list