Dear all,

I would like to get standard errors (or confidence intervals) for *predicted* 
values from an nls fit.

I have tried to implement code from p.225 in MASS (bootstrapping a nls fit), but this gives only the confidence intervals of the parameter estimates, but not an overall confidence interval for the predicted value(s):

puro1<-nls(rate~a*conc/(b+conc), data=Puromycin[1:12,], start=list(a=200, b=1)) 
 #set up nls model

# assume only one predicted value is obtained using 
predict(puro1,list(conc=0.02)):

st=cbind(Puromycin[1:12,],fit=predict(puro1,list(conc=0.02)))

puro.bf=function(rs,i){
        st$rate=st$fit+rs[i]
        coef(nls(rate~a*conc/(b+conc), st, start=coef(puro1)))
}

rs=scale(resid(puro1),scale=F)
(puro.boot=boot(rs,puro.bf,R=100))

boot.ci(puro.boot,index=1,type=c("norm"))
boot.ci$t0
boot.ci$norm
###

How do I have to change the code to get the c.i. for the predicted value?


Many thanks and best wishes,
Christoph





Prof Brian Ripley schrieb:
On Mon, 3 Nov 2008, Ben Bolker wrote:

Prof Brian Ripley wrote:
Christoph Scherber <Christoph.Scherber <at> agr.uni-goettingen.de>
writes:


Dear all,

Is there a way to retrieve standard errors from nls models?
The help page tells me that arguments
such as se.fit are ignored...

Many thanks and best wishes
Christoph

In general using the delta method (which is I guess what you mean, local
linearization via derivatives) is nowhere near accurate enough to be
useful. That's why it has not been done on several occasions in the past.
If you think it might be, see ?delta.method in package alr3.

I would suggest using simulation/bootsrapping to explore the uncertainty.
There is an example in MASS of doing so (and that illustrates some of
the pitfalls).

 Hmmm.  By an example, do you mean an example of using bootstrapping to
explore uncertainty in general, or of using bootstrapping to get
standard errors of predictions from nonlinear regressions?  I looked
through my copy of MASS (4th ed.) and found only section 5.7
(bootstrapping in general) and chapter 8 (nonlinear and smooth
regression, esp. p. 225 "bootstrapping" for getting bootstrap c.i.'s on
parameter estimates).  I didn't find anything *specifically* covering
s.e./c.i. for nls predictions, but maybe that's not what you meant.

I meant the example on p.225 on bootstrapping a nls fit (and that you needed to bootstrap residuals in some cases). You can use almost identical code to set s.e./c.i. for nls predictions.

 And yes, I meant "delta method" rather than "delta function" in my
original post.  Oops.

 I might add something quick/dirty/naive to the wiki giving
some examples of delta method/bootstrap approaches ...

 If there is no intention to add confidence interval calculation
to predict.se in the foreseeable future might I suggest that the details
under "Value" as to what "se.fit" will do when it is implemented be
removed? (And perhaps even a statement to the effect [as you say
above] that delta method is considered unreliable?)  As written it's a
bit of a tease ...

I didn't write that ... and its author might have other opinions.

 cheers
   Ben Bolker



--
Dr. rer.nat. Christoph Scherber
University of Goettingen
DNPW, Agroecology
Waldweg 26
D-37073 Goettingen
Germany

phone +49 (0)551 39 8807
fax   +49 (0)551 39 8806

Homepage http://www.gwdg.de/~cscherb1

______________________________________________
R-help@r-project.org 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.

Reply via email to