From ligges at statistik.uni-dortmund.de  Fri Oct 12 19:04:15 2007
From: ligges at statistik.uni-dortmund.de (Uwe Ligges)
Date: Fri, 12 Oct 2007 19:04:15 +0200
Subject: [Rd] no visible binding
In-Reply-To: <Pine.LNX.4.64.0710121855510.17956@reclus.nhh.no>
References: <050851DE-BDC9-4F82-8EA9-B05B9DC60AA7@uiuc.edu>
	<Pine.LNX.4.64.0710121855510.17956@reclus.nhh.no>
Message-ID: <470FA90F.8000503@statistik.uni-dortmund.de>



Roger Bivand wrote:
> On Fri, 12 Oct 2007, roger koenker wrote:
> 
>> Could someone advise me about how to react to the message:
>>
>> * checking R code for possible problems ... NOTE
>> slm: no visible binding for global variable 'response'
>>
>> from R CMD check SparseM    with
>> * using R version 2.6.0 Under development (unstable) (2007-09-03 r42749)
>>
>> The offending code looks like this:
>>
>> "slm" <-
>> function (formula,  data, weights, na.action, method = "csr",
>>     contrasts = NULL, ...)
>> {
>>     call <- match.call()
>>     m <- match.call(expand.dots = FALSE)
>>     m$method <- m$model <- m$x <- m$y <- m$contrasts <-  m$... <- NULL
>>     m[[1]] <- as.name("model.frame")
>>     m <- eval(m, sys.frame(sys.parent()))
>>     if (method == "model.frame")
>>         return(m)
>>     Terms <- attr(m, "terms")
>>     weights <- model.extract(m, weights)
>>     Y <- model.extract(m, response)
>                              ^^^^^^^^
> 
> which becomes:
> 
>> as.character(substitute(response))
> [1] "response"
> 
> inside model.extract. I'm not sure why codetools doesn't pick up weights 
> in the same context one line earlier, probably because weights is also 
> assigned to.

Yes. That object exists, but response does not.

Uwe




> Hope this helps,
> 
> Roger
> 
>>     X <- as.matrix.csr(model.matrix(Terms, m, contrasts))
>>     fit <- {
>>         if (length(weights))
>>             slm.wfit(X, Y,  weights, method, ...)
>>         else slm.fit(X, Y,  method, ...)
>>     }
>>     fit$terms <- Terms
>>     fit$call <- call
>>     attr(fit, "na.message") <- attr(m, "na.message")
>>     class(fit) <- c(if (is.matrix(Y)) "mslm", "slm")
>>     fit
>> }
>>
>>
>> url:    www.econ.uiuc.edu/~roger            Roger Koenker
>> email    rkoenker at uiuc.edu            Department of Economics
>> vox:     217-333-4558                University of Illinois
>> fax:       217-244-6678                Champaign, IL 61820
>>
>> ______________________________________________
>> R-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>
>



[Rd] no visible binding
Uwe Ligges