https://github.com/cran/MuMIn
Raw File
Tip revision: 69fda28b879d6147f7dda937d28114b28cc8ebc8 authored by Kamil BartoĊ„ on 14 May 2014, 02:44:24 UTC
version 1.10.0
Tip revision: 69fda28
Cp.R
# Mallow's Cp

`Cp` <- 
function (object, ..., dispersion = NULL) {
    .cp <- function(x, disp) {
		rss <- deviance(x)
		df.r <- df.residual(x)
		if(is.null(df.r)) {
			ll <- logLik(x)
			df.r <- attr(ll, "nobs") - attr(ll, "df") + 1
		}
		scale <- if (!is.null(disp)) disp else if 
			(family(x)$family %in% c("poisson", "binomial")) 1 else if
			(df.r > 0) rss / df.r else NaN
		rss + 2 * scale  * (nobs(x) - df.r)
	}
    if (length(list(...))) {
        cps <- vapply(list(object, ...), .cp, numeric(1L), disp = dispersion)
        val <- data.frame(Cp = cps)
        Call <- match.call()
        row.names(val) <- as.character(Call[-1L])
        val
    } else .cp(object, dispersion)
}
back to top