dput                  package:base                  R Documentation

Write an Object to a File or Recreate it

Description:

     Writes an ASCII text representation of an R object to a file or
     connection, or uses one to recreate the object.

Usage:

     dput(x, file = "",
          control = c("keepNA", "keepInteger", "showAttributes"))

     dget(file)

Arguments:

       x: an object.

    file: either a character string naming a file or a connection. '""'
          indicates output to the console.

 control: character vector indicating deparsing options. See
          '.deparseOpts' for their description.

Details:

     'dput' opens 'file' and deparses the object 'x' into that file. 
     The object name is not written (unlike 'dump'). If 'x' is a
     function the associated environment is stripped. Hence scoping
     information can be lost.

     Deparsing an object is difficult, and not always possible.  With
     the default 'control', 'dput()' attempts to deparse in a way that
     is readable, but for more complex or unusual objects (see 'dump',
     not likely to be parsed as identical to the original.  Use
     'control = "all"' for the most complete deparsing; use 'control =
     NULL' for the simplest deparsing, not even including attributes.

     'dput' will warn if fewer characters were written to a file than
     expected, which may indicate a full or corrupt file system.

     To display saved source rather than deparsing the internal
     representation  include '"useSource"' in 'control'.  R currently
     saves source only for function definitions.

Value:

     For 'dput', the first argument invisibly.

     For 'dget', the object created.

Note:

     To avoid the risk of a source attribute out of sync with the
     actual function definition, the source attribute of a function
     will never  be written as an attribute.

References:

     Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) _The New S
     Language_. Wadsworth & Brooks/Cole.

See Also:

     'deparse', 'dump', 'write'.

Examples:

     ## Write an ASCII version of mean to the file "foo"
     dput(mean, "foo")
     ## And read it back into 'bar'
     bar <- dget("foo")
     unlink("foo")
     ## Create a function with comments
     baz <- function(x) {
       # Subtract from one
       1-x
     }
     ## and display it
     dput(baz)
     ## and now display the saved source
     dput(baz, control = "useSource")

