[R] environment

Thomas Lumley tlumley at u.washington.edu
Wed Apr 26 17:11:24 CEST 2006


On Wed, 26 Apr 2006, Romain Francois wrote:

> Hi,
>
> Consider the code :
>
> g <- function(){
>  print(.x)
> .x <- 3
> }
>
> f <- function(){
>  environment(g) <- environment()
>  .x <- 2
>  g()
>  .x
> }
>
> > f()
> [1] 2
> [1] 2
>
>
> I would like f() to return 3. How can I do that ? Am I completely out of
> place ?
> Doing that, I want to avoid to pass .x as a parameter in f, because in
> real life .x is pretty big and g() is called over and over in a loop.
>

As long as .x doesn't get modified it probably won't be copied, so this is 
unlikely to make any difference to memory use even if you work out how to 
do it.

 	-thomas

Thomas Lumley			Assoc. Professor, Biostatistics
tlumley at u.washington.edu	University of Washington, Seattle




More information about the R-help mailing list