R/simcrowd.R

Defines functions simcrowd

Documented in simcrowd

#' Title
#'
#' @param nn
#' @param NN
#' @param lambda
#' @param fun
#' @param times
#'
#' @return
#' @export
#'
#' @examples
simcrowd <- function(nn, NN, lambda, fun, times){


  Htest <- var <- data.frame(matrix(vector(), 0, length(fun)),
                     stringsAsFactors=F)
  MU <- c()
  pb <- txtProgressBar(max = times, style = 3)
  for(i in 1:times){
    crowd <- gencrowd(nn, NN, lambda)
    MU <- c(MU, crowd$MU)
    sim <- lapply(fun, do.call, list(model=crowd))
    Htest <- rbind(Htest, lapply(sim, `[[`, 2))
    var <- rbind(var, lapply(sim, `[[`, 3))
    setTxtProgressBar(pb, i)
  }
  close(pb)
  names(Htest) <- fun
  names(var) <- fun

  out <- list(
    "Htest" = sapply(Htest, mean),
    "var" = sapply(var, mean),
    "Htest_detail" = Htest,
    "var_detail" = var,
    "NN"= NN,
    "nn"= nn,
    "lambda" = lambda,
    "mu" = MU

  )
  class(out) <- "crowdsimulation"
  return(out)
}
vincnardelli/crowdpostsampler documentation built on May 25, 2019, 7:23 p.m.