Hi -
I'm having a really hard time w/understanding R's get function, and would
appreciate any help with this.
Specifically, I'm using a for loop to call a function. I'd like the
function to have access to the variable being incremented in the for-loop,
i.e.
t.fn <- function() return( get( "i" ) )
t.fn2 <- function() {
for ( i in 1:5 )
cat( t.fn(), "\n" )
}
However, I keep getting err msg's from the 'get' function about how it can't
find the 'i' variable.
I've tried various combinations w/in the get fn, i.e. passing inherits=T
(should be the default val according to R's help) and envir=sys.frame().
As I understand it, 'get' should search the enclosing environments, which I
assume would be the call-stack of the functions. If not, could someone
clarify?
Thanks,
Peter
p.s. when I define t.fn to be:
t.fn<- function() {
for ( j in sys.nframe():0 ) cat( j,":",ls( sys.frame( j ) ), "\n" )
}
and call that in t.fn2(), I do eventually see the 'i' variable, i.e.
> t.fn2()
2 : j
1 : i
0 : test t.fn t.fn2 t.fn3
[[alternative HTML version deleted]]
______________________________________________
[email protected] 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.