[R] need an R-squared from a nls logistic sigmoid fit
Spencer Graves
spencer.graves at pdf.com
Mon Jun 6 04:10:14 CEST 2005
Gabor explained, "how are we supposed to compare one fit to another"
but not "Why doesn't nls() produce any kind of R-squared value". For
that, I requested 'RSiteSearch("R-squared from nls")'. The
seventh hit was a summary of an earlier discussion on this issue
(http://finzi.psych.upenn.edu/R/Rhelp02a/archive/5120.html). Perhaps
the most succinct reply was from Doug Bates:
"There is a good reason that an nls model fit in R does not provide
r-squared - r-squared doesn't make sense for a general nls model.
One way of thinking of r-squared is as a comparison of the residual
sum of squares for the fitted model to the residual sum of squares for
a trivial model that consists of a constant only. You cannot
guarantee that this is a comparison of nested models when dealing with
an nls model. If the models aren't nested this comparison is not
terribly meaningful.
So the answer is that you probably don't want to do this in the first
place."
Doug Bates wrote "nls" in R and is the lead author of my favorite
book on the subject. I've learned a lot from him. That would not
necessarily stop me from computing an R^2 from nls output, using formula
contributed by Andy Jaworski to this earlier discussion. However, I
would be careful about how I used that R^2.
spencer graves
Gabor Grothendieck wrote:
> On 6/5/05, James Salsman <james at bovik.org> wrote:
>
>>Why doesn't nls() produce any kind of R-squared value? In the absence
>>of such information, how are we supposed to compare one fit to another
>>when the y-axis scale changes?
>>
>>
>>>sm <- nls(y ~ SSfpl(x, miny, maxy, midx, grad))
>>>summary(sm)
>>
>>Formula: y ~ SSfpl(x, miny, maxy, midx, grad)
>>
>>Parameters:
>> Estimate Std. Error t value Pr(>|t|)
>>miny -0.5845 4.6104 -0.127 0.90524
>>maxy 7.2680 1.5512 4.686 0.00941 **
>>midx 16.9187 2.2340 7.573 0.00163 **
>>grad 1.7283 1.9150 0.903 0.41782
>>---
>>Signif. codes: 0 `***' 0.001 `**' 0.01 `*' 0.05 `.' 0.1 ` ' 1
>>
>>Residual standard error: 1.13 on 4 degrees of freedom
>>
>>Correlation of Parameter Estimates:
>> miny maxy midx
>>maxy -0.6654
>>midx 0.8936 -0.3221
>>grad -0.9068 0.8477 -0.6865
>>
>
>
> One uses anova (which has an anova.nls method) to compare two
> nls models.
>
> ______________________________________________
> R-help at 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
More information about the R-help
mailing list