On Thu, 14 Aug 2003 09:08:26 -0700, Spencer Graves <[EMAIL PROTECTED]> wrote :
>This seems to identify a possible bug in R 1.7.1 under Windows 2000: > > > tstDf <- data.frame(y = 1:11, x=1:11) > > fit <- nls(y~a/x, data=tstDf, start=list(a=1)) > > predict(fit, se.fit=TRUE) > [1] 7.0601879 3.5300939 2.3533960 1.7650470 1.4120376 1.1766980 1.0085983 > [8] 0.8825235 0.7844653 0.7060188 0.6418353 > >The same code in S-Plus 6.1 produces the following: > > > predict(fit, se.fit = TRUE) >$fit: > [1] 7.0601876 3.5300938 2.3533959 1.7650469 1.4120375 1.1766979 >1.0085982 0.8825234 > [9] 0.7844653 0.7060188 0.6418352 > >$se.fit: > [1] 5.2433042 2.6216521 1.7477681 1.3108261 1.0486608 0.8738840 >0.7490435 0.6554130 > [9] 0.5825894 0.5243304 0.4766640 I think that's a documented difference, rather than a bug. The ?predict.nls says near the top that at present, se.fit is ignored. I can see in the log that this comment was added in 1999; a contribution of code to actually do this would probably be welcomed! Perhaps the description below of what se.fit is supposed to do should be modified. >p.s. The following command in S-Plus 6.1 seems to work fine but >produces an error in R 1.7.1: > >nls(y~a, data=tstDf, start=list(a=1)) >Error in nlsModel(formula, mf, start) : singular gradient matrix at >initial parameter estimates This looks like a bug in numericDeriv, which finds a derivative of 0 rather than 1 for da/da. I've cc'd the author. Duncan ______________________________________________ [EMAIL PROTECTED] mailing list https://www.stat.math.ethz.ch/mailman/listinfo/r-help
