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 = 408.2379 eps = 0.294520     
GAMLSS-RS iteration  2: Global Deviance = 377.4947 eps = 0.075306     
GAMLSS-RS iteration  3: Global Deviance = 374.3566 eps = 0.008313     
GAMLSS-RS iteration  4: Global Deviance = 374.1054 eps = 0.000671     
GAMLSS-RS iteration  5: Global Deviance = 374.0982 eps = 0.000019     
GAMLSS-RS iteration  6: Global Deviance = 374.0952 eps = 0.000007     
## 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.9863337 
GAIC(b1, b2)
        AIC       df
b2 398.7366 12.32071
b1 504.6373  6.00000
AIC(b1, b2)
        AIC       df
b2 398.7366 12.32071
b1 504.6373  6.00000
BIC(b1, b2)
        AIC       df
b2 420.9960 12.32071
b1 515.4773  6.00000
## plot estimated effects
plot(b2)