R/dta_bonferroni.R

Defines functions pval_bonferroni cv_bonferroni study_dta_bonferroni

study_dta_bonferroni <- function(data = generate_data(seed=1337),
                           contrast = define_contrast("raw"),
                           benchmark = 0.5,
                           alpha = 0.05,
                           alternative = "greater",
                           analysis = "co-primary",
                           transformation = "none",
                           regu = FALSE,
                           pars = list()
){
  
  K <- contrast(data)
  m <- nrow(K)
  
  stats <- data2stats(data, contrast=contrast, regu = regu)
  cv <- cv_bonferroni(m, alpha, alternative)
  
  ## output
  stats %>% 
    stats2results(
      cv=cv, pval_fun=pval_bonferroni, benchmark,  
      alternative, transformation
    ) %>% 
    setattr(
      n = sapply(stats, function(x) x$n), m=m, 
      alpha=alpha, alpha_adj=alpha/m, cv=cv
    ) %>% 
    return()
}

# Helper functions ----------------------------------------------------------------------------

cv_bonferroni <- function(m, alpha, alternative){
  cv_uni(alpha/m, alternative)
}

pval_bonferroni <- function(tstat, alternative){
  p <- pval_uni(tstat, alternative)*length(tstat)
  return(pmin(p, 1))
}
maxwestphal/DTAmc documentation built on Dec. 21, 2021, 3:52 p.m.