Skip to contents

Lower bound on the number of correct rejections using Simes' reference family

Usage

posthocBySimes(
  p,
  select,
  alpha,
  flavor = c("full step down", "one step down", "single step")
)

Arguments

p

A numeric vector of m p-values for all tested hypotheses.

select

A vector of indices in \([1, \dots m]\) of the hypotheses to be selected.

alpha

A numeric value, the significance level of the test procedure.

flavor

A character value to specify whether to run the "single step", "one step down" or "full step down" versions of the Simes posthoc bound. Defaults to "full step down" (equivalent to cherry::pickSimes)

Value

A integer value, Simes's lower bound on the number of correct rejections within the selected hypotheses

References

Blanchard, G., Neuvial, P., & Roquain, E. (2020). Post hoc confidence bounds on false positives using reference families. Annals of Statistics, 48(3), 1281-1303.

Goeman, J. J., & Solari, A. (2011). Multiple testing for exploratory research. Statistical Science, 26(4), 584-597.

Author

Gilles Blanchard, Pierre Neuvial and Etienne Roquain

Examples

m <- 1e3
m1 <- 200
p <- 1-pnorm(c(rnorm(m1, mean=4), rnorm(m-m1, mean=0)))
R <- union(1:10, sample(m, 10))
alpha <- 0.10
if (require("cherry")) {
  hom <- hommelFast(p)
  pickSimes(hom, R, silent=TRUE, alpha = alpha)
}
#> Loading required package: cherry
#> [1] 9
posthocBySimes(p, R, alpha=alpha)
#> [1] 9

p <- c(0, 0.01, 0.02, 0.05, 0.1)
alpha <- 0.2
R <- 1:length(p)
posthocBySimes(p, R, alpha, flavor = "single step")
#> [1] 3
posthocBySimes(p, R, alpha, flavor = "one step down")
#> [1] 4
posthocBySimes(p, R, alpha, flavor = "full step down")
#> [1] 5
if (require("cherry")) {
  hom <- hommelFast(p)
  pickSimes(hom, R, silent=TRUE, alpha = alpha)
}
#> [1] 5