https://github.com/cran/flexmix
Raw File
Tip revision: 0e4ff321a1e17d4a2b03adb63568b6e881ae2114 authored by Bettina Gruen on 20 March 2012, 00:00:00 UTC
version 2.3-7
Tip revision: 0e4ff32
myConcomitant.R
myConcomitant <-
  function(formula = ~ 1) {
    z <- new("FLXP",
             name = "myConcomitant",
             formula = formula)
    z@fit <- function(x, y, w, ...) {
      if (missing(w) || is.null(w)) w <- rep(1, length(x))
      f <- as.integer(factor(apply(x, 1, paste,
                                   collapse = "")))
      AVG <- apply(w*y, 2, tapply, f, mean)
      (AVG/rowSums(AVG))[f,,drop=FALSE]
    }
    z@refit <- function(x, y, w, ...) {
      if (missing(w) || is.null(w)) w <- rep(1, length(x))
      f <- as.integer(factor(apply(x, 1, paste,
                                   collapse = "")))
      AVG <- apply(w*y, 2, tapply, f, mean)
      (AVG/rowSums(AVG))
    }
    z
  }

back to top