weihong wrote:
I am wondering why my function works fine in R1.7.1 and R1.8.1 but not in R1.9.0. I thought it's an environment related problem but I can't solve it.
data
weta jd 1 1 4 2 2 13 3 2 13 4 6 4 5 1 3 6 1 7 7 2 10 8 3 10 9 1 8 10 1 8 11 3 6 12 1 9 13 1 5 14 1 1 15 3 13 16 1 2 17 2 2 18 7 11 19 1 3 20 5 4 21 1 6 22 4 9 23 1 6 24 4 5 25 5 5 26 2 6
program
function(dataset)
{
tmp<-glm(weta~1, family=poisson, data=dataset)
tmp.f<-step(tmp,~.+jd) }
When I run program(data) in 1.9.0, an error message appears:
Error in model.frame.default(formula = WETA ~ jd, data = dataset, drop.unused.levels = TRUE) :
Object "dataset" not found
Thanks for help in advance!
Weihong Zeng University of Albert
This is a scoping problem. There may be better answers but the following trick has worked for me in the past:
f <- function(z) { eval(substitute(fit <- glm(weta ~ 1, family = poisson, data = z), list(z = z))) step(fit, ~ . + jd) }
--sundar
______________________________________________ [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