Description Usage Arguments Details Value Author(s) References See Also Examples
omnibus.test
tests the global null hypothesis. Rejection can be interpreted as evidence for at least one alternative hypothesis to be true.
1 | omnibus.test(p, method = c("z", "p", "log.p"), N.sim = 10000, approximate = FALSE)
|
p |
numeric vector or matrix of input p-values. In the case of a matrix, rows correspond to individual hypotheses. |
method |
character string naming a pre-defined transformation of input p-values (see 'Details'). Alternatively, a custom function can be specified that takes a numeric vector as input and returns a vector of transformed values. |
N.sim |
numeric indicating the number of simulations that should be performed under H0. |
approximate |
logical specifying whether a beta-approximation should be applied to allow for extreme p-values, or not (default). |
Before summing up p-values they are transformed according to method
. The following pre-defined options are available:
p-values are transformed to z-scores.
1-p
.
-log(p)
.
A numeric vector of p-values under the global null hypothesis, with length of 1 if p
is a vector or length equal ncol(p)
if p
is a matrix.
Thomas Taus and Andreas Futschik
Futschik A., Taus T. and Zehetmayer S.: An omnibus test for the global null hypothesis, arXiv 2017, 1709.00960.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | # perform Omnibus-test for 5 p-values under H0
p <- runif(5)
omnibus.test(p=p)
# perform 10,000 Omnibus-tests for p-values under H0
n <- 10000
p <- matrix(runif(n*5), nrow=5)
p.global <- omnibus.test(p=p)
hist(p.global)
# test 3 hypotheses with and without effekt
p1 <- t.test(rnorm(15, mean=1), rnorm(15, mean=1))$p.value # mean identical
p2 <- t.test(rnorm(15, mean=2), rnorm(15, mean=2))$p.value # mean identical
p3 <- t.test(rnorm(15, mean=1), rnorm(15, mean=2))$p.value # mean different
# perform Omnibus-test of the null hypothesis that none of the three tests is significant
omnibus.test(p=c(p1, p2, p3))
# repeat Omnibus-test using another predefined method to transform input p-values
omnibus.test(p=c(p1, p2, p3), method="log.p")
# repeat Omnibus-test using a custom transformation of input p-values
transformation <- function(x) {
x^-2
}
omnibus.test(p=c(p1, p2, p3), method=transformation)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.