Re: [R] dput and dget

From: Duncan Murdoch <dmurdoch_at_pair.com>
Date: Fri 16 Jul 2004 - 04:57:35 EST

On Thu, 15 Jul 2004 14:22:12 -0400, "Mike Prager" <Mike.Prager@noaa.gov> wrote :

>I am seeking advice about dput() and dget().
>
>We are using the ascii format supported by these functions as a way to
>write data from other programs that can be read into R easily. We are able
>to save complicated results (in the form of an R list) to a single file
>that can be read trivially into R or S-Plus.
>
>My question is whether that format can be considered a safe one for
>medium-term (say 10 years) data storage. Assuming R is still used then
>(which I suppose will be true), will "dget" work with old files?

I don't think dput alone is a very safe data storage strategy, but it depends on what sorts of things you are storing. For numerical or character data in lists and data frames, it's probably perfectly safe. For more complicated things (e.g. results of an analysis), it may not be. I'd recommend saving both as a dump and in a binary image.

The problem is that dput() in 1.9.x does not do a very complete job of deparsing, and there are many objects for which dput followed by dget changes the object. (Version 2 will be a tiny bit better by default, and will have an option to be reasonably good, but there are still some exotic objects which can't be dumped at all. dump() will by default do a better job.)

Assuming you've got a relatively simple object which can be dumped correctly now, there might be changes to the syntax that mean dget won't work. Recent changes like that include the move of "_" from being an assignment operator to being legal in object names. There are some aspects of R syntax that are still described as experimental ("::", ":::" come to mind); those might not be supported 10 years from now.

For more complicated objects, I'd guess that binary images saved by save() are safer. Whenever the binary image format changes, there will be an effort to make sure older images can still be read. But it's likely that only R is going to be able to read binary images, and 10 years from now you might be using some other program: so you want the dump as well.

Duncan Murdoch



R-help@stat.math.ethz.ch mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Fri Jul 16 05:17:00 2004

This archive was generated by hypermail 2.1.8 : Wed 03 Nov 2004 - 22:55:00 EST