Hi, David: That works. Thanks very much. Spencer Graves
On 5/5/2016 7:43 PM, David Winsemius wrote:
On May 5, 2016, at 5:12 PM, Spencer Graves
<spencer.gra...@effectivedefense.org> wrote:
I want a function to evaluate one argument
in the environment of a data.frame supplied
as another argument. "attach" works for
this, but "with" does not. Is there a way
to make "with" work? I'd rather not attach
the data.frame.
With the following two functions "eval.w.attach"
works but "eval.w.with" fails:
dat <- data.frame(a=1:2)
eval.w.attach <- function(x, dat){
attach(dat)
X <- x
detach()
X
}
eval.w.with <- function(x, dat){
with(dat, x)
}
eval.w.attach(a/2, dat) # returns c(.5, 1)
How about using eval( substitute( ...))?
eval.w.sub <- function(expr, datt){
eval( substitute(expr), env=datt)
}
eval.w.sub(a/2, dat)
#[1] 0.5 1.0
______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
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.