QIC: QIC and quasi-Likelihood for GEE

QICR Documentation

QIC and quasi-Likelihood for GEE

Description

Calculate quasi-likelihood under the independence model criterion (QIC) for Generalized Estimating Equations.

Usage

QIC(object, ..., typeR = FALSE)
QICu(object, ..., typeR = FALSE)
quasiLik(object, ...)

Arguments

object

a fitted model object of class "gee", "geepack", "geem", "wgee", or "yags".

...

for QIC and QIC_{u}, optionally more fitted model objects.

typeR

logical, whether to calculate QIC(R). QIC(R) is based on quasi-likelihood of a working correlation R model. Defaults to FALSE, and QIC(I) based on independence model is returned.

Value

If just one object is provided, returns a numeric value with the corresponding QIC; if more than one object are provided, returns a data.frame with rows corresponding to the objects and one column representing QIC or QIC_{u}.

Note

This implementation is based partly on (revised) code from packages yags (R-Forge) and ape.

Author(s)

Kamil Bartoń

References

Pan, W. 2001 Akaike's Information Criterion in Generalized Estimating Equations. Biometrics 57, 120–125

Hardin J. W., Hilbe, J. M. 2003 Generalized Estimating Equations. Chapman & Hall/CRC

See Also

Methods exist for gee (package gee), geeglm (geepack), geem (geeM), wgee (wgeesel, the package's QIC.gee function is used), and yags (yags on R-Forge). There is also a QIC function in packages MESS and geepack, returning some extra information (such as CIC and QICc). yags and compar.gee from package ape both provide QIC values.

Examples



data(ohio)

fm1 <- geeglm(resp ~ age * smoke, id = id, data = ohio,
    family = binomial, corstr = "exchangeable", scale.fix = TRUE)
fm2 <- update(fm1, corstr = "ar1")
fm3 <- update(fm1, corstr = "unstructured")

# QIC function is also defined in 'geepack' but is returns a vector[6], so
# cannot be used as 'rank'. Either use `MuMIn::QIC` syntax or make a wrapper
# around `geepack::QIC`

QIC <- MuMIn::QIC
## Not run: 
QIC <- function(x) geepack::QIC(x)[1]

## End(Not run)

model.sel(fm1, fm2, fm3, rank = QIC)

#####
library(geepack)
library(MuMIn)

## Not run: 
# same result:
    dredge(fm1, m.lim = c(3, NA), rank = QIC, varying = list(
    corstr = list("exchangeable", "unstructured", "ar1")
    ))      

## End(Not run)



MuMIn documentation built on Aug. 7, 2023, 3 p.m.