Christoph Scherber
2009-Jan-07 15:01 UTC
[R] Extracting degrees of freedom from a gnls object
Dear all, How can I extract the total and residual d.f. from a gnls object? I have tried str(summary(gnls.model)) and str(gnls.model) as well as gnls(), but couldn?t find the entry in the resulting lists. Many thanks! Best wishes Christoph -- 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
on 01/07/2009 09:01 AM Christoph Scherber wrote:> Dear all, > > How can I extract the total and residual d.f. from a gnls object? > > I have tried str(summary(gnls.model)) and str(gnls.model) as well as > gnls(), but couldn?t find the entry in the resulting lists. > > Many thanks! > > Best wishes > ChristophUsing the example from ?gnls: library(nlme) fm1 <- gnls(weight ~ SSlogis(Time, Asym, xmid, scal), Soybean, weights = varPower())> fm1Generalized nonlinear least squares fit Model: weight ~ SSlogis(Time, Asym, xmid, scal) Data: Soybean Log-likelihood: -486.8974 Coefficients: Asym xmid scal 17.356822 51.872316 7.620525 Variance function: Structure: Power of variance covariate Formula: ~fitted(.) Parameter estimates: power 0.8815436 Degrees of freedom: 412 total; 409 residual Residual standard error: 0.3662752 When reviewing the structure of the 'fm1' object in comparison to the output, you can see that the d.f. are stored in:> fm1$dims$p [1] 3 $N [1] 412 $REML [1] FALSE So:> fm1$dims$N[1] 412 and:> fm1$dims$N - fm1$dims$p[1] 409 If you are unsure about where things are stored, one approach is to look at the code for the print method for the object class to see how the output is generated. In this case it is print.gls(), as a gnls object inherits from a gls object. Thus, reviewing the apropos snippet from nlme:::print.gls(): cat("Degrees of freedom:", dd[["N"]], "total;", dd[["N"]] - dd[["p"]], "residual\n") where 'dd' is created earlier in the function as: dd <- x$dims This is also covered in ?gnlsObject, which shows: dims a list with basic dimensions used in the model fit, including the components N - the number of observations used in the fit and p - the number of coefficients in the nonlinear model. HTH, Marc Schwartz