2011-05-12 18 views
5

¿Hay un "presente" de referencia en I que me permite escribir¿Hay una referencia "this" en R Functions?

envir1 <- new.env() 
assign("x", 4, envir=envir1) 

test <- function(env1) { 
    environment(this) <- env1 
    return(x + 5) 
} 

test(envir1) 

en lugar de:

envir1 <- new.env() 
assign("x", 4, envir=envir1) 

test2 <- function() { 
    return(x+1) 
} 

test <- function(env1) { 
    environment(test2) <- env1 
    return(test2()) 
} 

test(envir1) 
+1

no hay necesidad de poner fin a cada declaración con una punto y coma. Este es R, no C;) –

+0

bueno, tienes razón ... thx ^^ – tObi

+0

@Joris - y ahora corregido :-) –

Respuesta

10

¿qué tal

test <- function(env1) { 
    with(env1, { 
     return(x + 5); 
     }) 
} 
+0

nice .. eso es lo que estaba buscando. Gracias – tObi

Cuestiones relacionadas