[R] writintg wrappers around save()

Prof Brian Ripley ripley at stats.ox.ac.uk
Fri Mar 21 22:06:13 CET 2008


>From the help page

      The names of the objects specified either as symbols (or character
      strings) in '...' or as a character vector in 'list' are used to
      look up the objects from environment 'envir'.

The default for envir is parent.frame().  You want to change it (and watch 
out that default and explicit arguments are evaluated in different 
places).  One approach is

save.verbose <- function(..., file, envir = parent.frame())
{
     cat("save.verbose:", file, "\n")
     save(..., file=file, envir=envir)
}


On Fri, 21 Mar 2008, Vadim Organovich wrote:

> Dear R-users,
>
> I am trying to write a wrapper function around save() that will report the file which is being saved to.
>
> So I thought that the followintg would do the trick, but it doesn't. I understand that 'y' is somehow not visible inside save.verbose, but don't know how to fix this.
>
> save.verbose <- function(..., file) {
>  cat("save.verbose:", file, "\n")
>  save(..., file=file)
> }
>> foo <- function(x) { y <- x; save.verbose('y', file='foo.rda') }; foo(1)
> save.verbose: foo.rda
> Error in save(..., file = file) : object 'y' not found
> Any suggestion how to fix this?
>
> Thank you for your time,
> Vadim
>
> P.S. I have a nagging feeling that I've already asked this question but I am not able to find any trace of it in the archives. My apologiesif this is so.
>
> 	[[alternative HTML version deleted]]
>
> ______________________________________________
> 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.
>

-- 
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595



More information about the R-help mailing list