On Sun, Nov 1, 2009 at 7:48 PM, David Winsemius <dwinsem...@comcast.net> wrote: > > On Nov 1, 2009, at 10:16 PM, Henrik Bengtsson wrote: > >> path <- "data"; >> dir.create(path); >> >> for (i in 1:10) { >> m <- i:5; >> filename <- sprintf("m%02d.Rbin", i); >> pathname <- file.path(path, filename); >> save(m, file=pathname); >> } >> > > That would result in each of the ten files containing an object with the > same name == "m". (Also on my system R data files have type Rdta.) So I > thought what was requested might have been a slight mod: > > path <- "~/"; > dir.create(path); > > for (i in 1:10) { > assign( paste("m", i, sep=""), i:5) > filename <- sprintf("m%02d.Rdta", i) > pathname <- file.path(path, filename) > obj =get(paste("m", i, sep="")) > save(obj, file=pathname) > }
Then a more convenient solution is to use saveObject() and loadObject() of R.utils. saveObject() does not save the name of the object save. If you want to save multiple objects, the wrap them up in a list. loadObject() does not assign variable, but instead return them. Example: library("R.utils"); x <- list(a=1,b=LETTERS,c=Sys.time()); saveObject(x, file="foo.Rbin"); y <- loadObject("foo.Rbin"); stopifnot(identical(x,y)); So, for the original example, I'd recommend: library("R.utils"); path <- "data"; mkdirs(path); for (i in 1:10) { m <- i:5; filename <- sprintf("m%02d.Rbin", i); saveObject(m, file=filename, path=path); } and loading the objects back as: for (i in 1:10) { filename <- sprintf("m%02d.Rbin", i); m <- loadObject(filename, path=path); print(m); } /Henrik > > -- > David. > >> /H >> >> On Sun, Nov 1, 2009 at 6:53 PM, jeffc <h...@andrew.cmu.edu> wrote: >>> >>> Hi, >>> >>> I would like to save a few dynamically created objects to disk. The >>> following is the basic flow of the code segment >>> >>> for(i = 1:10) { >>> m = i:5 >>> save(m, file = ...) ## ??? >>> } >>> To distinguish different objects to be saved, I would like to save m as >>> m1, >>> m2, m3 ..., to file /home/data/m1, /home/data/m2, home/data/m3, ... >>> >>> I tried a couple of methods on translating between object names and >>> strings >>> (below) but couldn't get it to work. >>> https://stat.ethz.ch/pipermail/r-help/2008-November/178965.html >>> http://tolstoy.newcastle.edu.au/R/help/04/08/2673.html >>> >>> Any suggestions would be appreciated. >>> >>> thanks >>> >>> Hao >>> >>> -- >>> View this message in context: >>> http://old.nabble.com/save-an-object-by-dynamicly-created-name-tp26155437p26155437.html >>> Sent from the R help mailing list archive at Nabble.com. >>> >>> ______________________________________________ >>> 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. >>> >> >> ______________________________________________ >> 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. > > David Winsemius, MD > Heritage Laboratories > West Hartford, CT > > ______________________________________________ > 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. > ______________________________________________ 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.