-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi
I am writing simulations in R, and quite regularly, I have to save lists
and objects to HDD and load it later again.
So I am wondering: why is there no function to write lists (and S3, S4
objects) onto HDD WITHOUT keeping the name? What I mean is:
For data.frames I can use
x <- data.frame(x = runif(10))
write.table(x, "x.txt)
rm(x)
y <- read.table("x.txt")
to load it into y.
But for lists and S3, S4 objects, I have to use save() and load():
x <- list(x=1:10, y=letters(1:10))
save(x, file="x.rdata")
rm(x)
load("x.rdata") #1
y <- x #2
rm(x) #3
to load it into y.
I don't mind the binary of save - what I am really missing is a command
which combines lines #1, #2 and #3.
I know - I could write my own
save.list <- function(x, file) {
save(s, file=file)
}
load.list <- function(file) {
load(file)
return(x)
}
which I could then use as:
x <- list(x=1:10, y=letters(1:10))
save.list(x, "test.rdata")
rm(x)
y <- load.list("test.rdata")
but: why is there not such a function? Am I missing something here?
Cheers,
Rainer
- --
Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation
Biology, UCT), Dipl. Phys. (Germany)
Centre of Excellence for Invasion Biology
Natural Sciences Building
Office Suite 2039
Stellenbosch University
Main Campus, Merriman Avenue
Stellenbosch
South Africa
Tel: +33 - (0)9 53 10 27 44
Cell: +27 - (0)8 39 47 90 42
Fax (SA): +27 - (0)8 65 16 27 82
Fax (D) : +49 - (0)3 21 21 25 22 44
Fax (FR): +33 - (0)9 58 10 27 44
email: Rainer at krugs.de
Skype: RMkrug
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAk0rFocACgkQoYgNqgF2egoLMgCfQmZFnLx4Olkb55DtLKmuRXYY
yvoAnieTY3/CsGM9pqyoownLxgeuaDrd
=VOFu
-----END PGP SIGNATURE-----
Hi,
If I understood you correctly, you can use saveObject()/loadObject()
from package R.utils, like this:
library(R.utils)
saveObject(x, "x.Rbin")
rm(x)
y <- loadObject("x.Rbin")
HTH,
Ivan
Le 1/10/2011 15:24, Rainer M Krug a ?crit :> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi
>
> I am writing simulations in R, and quite regularly, I have to save lists
> and objects to HDD and load it later again.
>
> So I am wondering: why is there no function to write lists (and S3, S4
> objects) onto HDD WITHOUT keeping the name? What I mean is:
>
> For data.frames I can use
>
> x<- data.frame(x = runif(10))
> write.table(x, "x.txt)
> rm(x)
>
> y<- read.table("x.txt")
>
> to load it into y.
>
> But for lists and S3, S4 objects, I have to use save() and load():
>
> x<- list(x=1:10, y=letters(1:10))
> save(x, file="x.rdata")
> rm(x)
>
> load("x.rdata") #1
> y<- x #2
> rm(x) #3
>
> to load it into y.
> I don't mind the binary of save - what I am really missing is a command
> which combines lines #1, #2 and #3.
>
> I know - I could write my own
>
> save.list<- function(x, file) {
> save(s, file=file)
> }
>
> load.list<- function(file) {
> load(file)
> return(x)
> }
>
> which I could then use as:
>
> x<- list(x=1:10, y=letters(1:10))
> save.list(x, "test.rdata")
>
> rm(x)
>
> y<- load.list("test.rdata")
>
> but: why is there not such a function? Am I missing something here?
>
> Cheers,
>
> Rainer
>
> - --
> Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation
> Biology, UCT), Dipl. Phys. (Germany)
>
> Centre of Excellence for Invasion Biology
> Natural Sciences Building
> Office Suite 2039
> Stellenbosch University
> Main Campus, Merriman Avenue
> Stellenbosch
> South Africa
>
> Tel: +33 - (0)9 53 10 27 44
> Cell: +27 - (0)8 39 47 90 42
> Fax (SA): +27 - (0)8 65 16 27 82
> Fax (D) : +49 - (0)3 21 21 25 22 44
> Fax (FR): +33 - (0)9 58 10 27 44
> email: Rainer at krugs.de
>
> Skype: RMkrug
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.10 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>
> iEYEARECAAYFAk0rFocACgkQoYgNqgF2egoLMgCfQmZFnLx4Olkb55DtLKmuRXYY
> yvoAnieTY3/CsGM9pqyoownLxgeuaDrd
> =VOFu
> -----END PGP SIGNATURE-----
>
> ______________________________________________
> R-help at 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.
>
--
Ivan CALANDRA
PhD Student
University of Hamburg
Biozentrum Grindel und Zoologisches Museum
Abt. S?ugetiere
Martin-Luther-King-Platz 3
D-20146 Hamburg, GERMANY
+49(0)40 42838 6231
ivan.calandra at uni-hamburg.de
**********
http://www.for771.uni-bonn.de
http://webapp5.rrz.uni-hamburg.de/mammals/eng/1525_8_1.php
How about dput and dget in the base package? -- Gregory (Greg) L. Snow Ph.D. Statistical Data Center Intermountain Healthcare greg.snow at imail.org 801.408.8111> -----Original Message----- > From: r-help-bounces at r-project.org [mailto:r-help-bounces at r- > project.org] On Behalf Of Rainer M Krug > Sent: Monday, January 10, 2011 7:24 AM > To: R-help > Subject: [R] write.table equivalent for lists? > > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Hi > > I am writing simulations in R, and quite regularly, I have to save > lists > and objects to HDD and load it later again. > > So I am wondering: why is there no function to write lists (and S3, S4 > objects) onto HDD WITHOUT keeping the name? What I mean is: > > For data.frames I can use > > x <- data.frame(x = runif(10)) > write.table(x, "x.txt) > rm(x) > > y <- read.table("x.txt") > > to load it into y. > > But for lists and S3, S4 objects, I have to use save() and load(): > > x <- list(x=1:10, y=letters(1:10)) > save(x, file="x.rdata") > rm(x) > > load("x.rdata") #1 > y <- x #2 > rm(x) #3 > > to load it into y. > I don't mind the binary of save - what I am really missing is a command > which combines lines #1, #2 and #3. > > I know - I could write my own > > save.list <- function(x, file) { > save(s, file=file) > } > > load.list <- function(file) { > load(file) > return(x) > } > > which I could then use as: > > x <- list(x=1:10, y=letters(1:10)) > save.list(x, "test.rdata") > > rm(x) > > y <- load.list("test.rdata") > > but: why is there not such a function? Am I missing something here? > > Cheers, > > Rainer > > - -- > Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation > Biology, UCT), Dipl. Phys. (Germany) > > Centre of Excellence for Invasion Biology > Natural Sciences Building > Office Suite 2039 > Stellenbosch University > Main Campus, Merriman Avenue > Stellenbosch > South Africa > > Tel: +33 - (0)9 53 10 27 44 > Cell: +27 - (0)8 39 47 90 42 > Fax (SA): +27 - (0)8 65 16 27 82 > Fax (D) : +49 - (0)3 21 21 25 22 44 > Fax (FR): +33 - (0)9 58 10 27 44 > email: Rainer at krugs.de > > Skype: RMkrug > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.10 (GNU/Linux) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ > > iEYEARECAAYFAk0rFocACgkQoYgNqgF2egoLMgCfQmZFnLx4Olkb55DtLKmuRXYY > yvoAnieTY3/CsGM9pqyoownLxgeuaDrd > =VOFu > -----END PGP SIGNATURE----- > > ______________________________________________ > R-help at 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.