From a144c9f394a1ca7a6a35f21b8b1ef7ae18b5e5a4 Mon Sep 17 00:00:00 2001 From: Arfon Smith Date: Tue, 22 Apr 2014 19:36:44 -0500 Subject: [PATCH] Adding R example with .r extension --- samples/R/df.residual.r | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 samples/R/df.residual.r diff --git a/samples/R/df.residual.r b/samples/R/df.residual.r new file mode 100644 index 00000000..a7a00686 --- /dev/null +++ b/samples/R/df.residual.r @@ -0,0 +1,29 @@ + +df.residual.mira <- function(object, ...) { + fit <- object$analyses[[1]] + return(df.residual(fit)) +} + +df.residual.lme <- function(object, ...) { + return(object$fixDF[["X"]][1]) +} + +df.residual.mer <- function(object, ...) { + return(sum(object@dims[2:4] * c(1, -1, -1)) + 1) +} + +df.residual.default <- function(object, q = 1.3, ...) { + df <- object$df.residual + if (!is.null(df)) + return(df) + + mk <- try(c <- coef(object), silent = TRUE) + mn <- try(f <- fitted(object), silent = TRUE) + if (inherits(mk, "try-error") | inherits(mn, "try-error")) + return(NULL) + n <- ifelse(is.data.frame(f) | is.matrix(f), nrow(f), length(f)) + k <- length(c) + if (k == 0 | n == 0) + return(NULL) + return(max(1, n - q * k)) +}