dump {base} | R Documentation |
Text Representations of R Objects
Description
This function takes a vector of names of R objects and produces
text representations of the objects on a file or connection.
A dump
file can usually be source
d into another
R session.
Usage
dump(list, file = "dumpdata.R", append = FALSE,
control = "all", envir = parent.frame(), evaluate = TRUE)
Arguments
list |
character vector (or |
file |
either a character string naming a file or a
connection. |
append |
if |
control |
character vector (or |
envir |
the environment to search for objects. |
evaluate |
logical. Should promises be evaluated? |
Details
If some of the objects named do not exist (in scope), they are
omitted, with a warning. If file
is a file and no objects
exist then no file is created.
source
ing may not produce an identical copy of
dump
ed objects. A warning is issued if it is likely that
problems will arise, for example when dumping exotic or complex
objects (see the Note).
dump
will also warn if fewer characters were written to a file
than expected, which may indicate a full or corrupt file system.
A dump
file can be source
d into another R (or
perhaps S) session, but the functions save
and
saveRDS
are designed to
be used for transporting R data, and will work with R objects that
dump
does not handle. For maximal reproducibility use
control = "exact"
.
To produce a more readable representation of an object, use
control = NULL
. This will skip attributes, and will make other
simplifications that make source
less likely to produce an
identical copy. See .deparseOpts
for details.
To deparse the internal representation of a function rather than
displaying the saved source, use control = c("keepInteger",
"warnIncomplete", "keepNA")
. This will lose all formatting and
comments, but may be useful in those cases where the saved source is
no longer correct.
Promises will normally only be encountered by users as a result of
lazy-loading (when the default evaluate = TRUE
is essential)
and after the use of delayedAssign
,
when evaluate = FALSE
might be intended.
Value
An invisible character vector containing the names of the objects which were dumped.
Note
As dump
is defined in the base namespace, the base
package will be searched before the global environment unless
dump
is called from the top level prompt or the envir
argument is given explicitly.
To avoid the risk of a source attribute becoming out of sync with the actual function definition, the source attribute of a function will never be dumped as an attribute.
Currently environments, external pointers, weak references and objects
of type S4
are not deparsed in a way that can be
source
d. In addition, language objects are deparsed in a
simple way whatever the value of control
, and this includes not
dumping their attributes (which will result in a warning).
References
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
See Also
.deparseOpts
for available control
settings;
dput()
, dget()
and deparse()
for related functions using identical internal deparsing functionality.
write
, write.table
, etc for “dumping”
data to (text) files.
save
and saveRDS
for a more reliable way to
save R objects.
Examples
x <- 1; y <- 1:10
fil <- tempfile(fileext=".Rdmped")
dump(ls(pattern = '^[xyz]'), fil)
print(.Last.value)
unlink(fil)