GAIC and Generalised (Pseudo) R-squared for GAMLSS Models

Description

Functions to compute the GAIC and the generalised R-squared of Nagelkerke (1991) for a GAMLSS models.

Usage

## Information criteria.
GAIC(object, ...,
  k = 2, corrected = FALSE)

## R-squared.
Rsq(object, ...,
  type = c("Cox Snell", "Cragg Uhler", "both", "simple"),
  newdata = NULL)

Arguments

object A fitted model object
Optionally more fitted model objects.
k Numeric, the penalty to be used. The default k = 2 corresponds to the classical AIC.
corrected Logical, whether the corrected AIC should be used? Note that it applies only when k = 2.
type which definition of R squared. Can be the “Cox Snell” or the Nagelkerke, “Cragg Uhler” or “both”, and “simple”, which computes the R-squared based on the median. In this case also newdata may be supplied.
newdata Only for type = “simple” the R-squared can be evaluated using newdata.

Details

The Rsq() function uses the definition for R-squared:

\(R^2=1- \left(\frac{L(0)}{L(\hat{\theta})}\right)^{2/n}\)

where \(L(0)\) is the null model (only a constant is fitted to all parameters) and \(L(\hat{\theta})\) is the current fitted model. This definition sometimes is referred to as the Cox & Snell R-squared. The Nagelkerke /Cragg & Uhler’s definition divides the above with

\(1 - L(0)^{2/n}\)

Value

Numeric vector or data frame, depending on the number of fitted model objects.

References

Nagelkerke NJD (1991). “A Note on a General Definition of the Coefficient of Determination.” Biometrika, 78(3), 691–692. doi:10.1093/biomet/78.3.691

See Also

gamlss2

Examples

library("gamlss2")


## load the aids data set
data("aids", package = "gamlss.data")

## estimate negative binomial count models
b1 <- gamlss2(y ~ x + qrt, data = aids, family = NBI)
GAMLSS-RS iteration  1: Global Deviance = 492.7033 eps = 0.148555     
GAMLSS-RS iteration  2: Global Deviance = 492.6374 eps = 0.000133     
GAMLSS-RS iteration  3: Global Deviance = 492.6373 eps = 0.000000     
b2 <- gamlss2(y ~ s(x) + s(qrt, bs = "re"), data = aids, family = NBI)
GAMLSS-RS iteration  1: Global Deviance = 406.747 eps = 0.297097     
GAMLSS-RS iteration  2: Global Deviance = 374.1346 eps = 0.080178     
GAMLSS-RS iteration  3: Global Deviance = 364.2545 eps = 0.026407     
GAMLSS-RS iteration  4: Global Deviance = 363.228 eps = 0.002818     
GAMLSS-RS iteration  5: Global Deviance = 363.1599 eps = 0.000187     
GAMLSS-RS iteration  6: Global Deviance = 363.154 eps = 0.000016     
GAMLSS-RS iteration  7: Global Deviance = 363.1529 eps = 0.000003     
## compare models
Rsq(b1)
[1] 0.8095853
Rsq(b1, type = "both")
$CoxSnell
[1] 0.8095853

$CraggUhler
[1] 0.809588
Rsq(b1, b2)
       b1        b2 
0.8095853 0.9892836 
GAIC(b1, b2)
        AIC       df
b2 388.9822 12.91461
b1 504.6373  6.00000
AIC(b1, b2)
        AIC       df
b2 388.9822 12.91461
b1 504.6373  6.00000
BIC(b1, b2)
        AIC       df
b2 412.3145 12.91461
b1 515.4773  6.00000
## plot estimated effects
plot(b2)