I am writing a function of weighted regression, as a procedure for heteroskedasticity.

The function runs an auxiliary regression whose fitted values I assign to fit, and then I go:

    w <- 1/(exp(fit/2))

    ## Rerun the old regression ##
    if(gls) {
      wtd.model <- glm(model, weights=w)
    }

    if(!gls) {
      wtd.model <- lm(model, weights=w, x=TRUE)
    }

In this version, R complains that it can't find w. How can I tell it to look for w in the function's environment, rather than in environment 1 or whatever?

An easy workaround, of course, is to superassign w and remove it afterwards, but that's a little messy, in case the user already has a variable called w in his environment.

Thanks,
        Tobias Muhlhofer

______________________________________________
R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html

Reply via email to