meanz function

Combine p values using the mean z method

Combine p values using the mean z method

Combines p values using the mean of z method\loadmathjax

meanz(p, log.p = FALSE) ## S3 method for class 'meanz' print(x, ...)

Arguments

  • p: A vector of significance values
  • log.p: Logical, if TRUE result is returned as log(p)
  • x: An object of class ‘meanz’
  • ...: Other arguments to be passed through

Details

Let \mjdeqn \bar z = \sum _i=1^k \frac z(p_i)kbarz = sum(z(p) / k)

and \mjdeqn s_\bar z = \frac s_z\sqrt ks_barz = s_z / sqrt k

Defined as \mjdeqn \frac \bar zs_\bar z > t_k-1(\alpha )((barz / s_barz) > t_k-1(alpha)

The values of \mjseqn p_i should be such that \mjseqn 0\le p_i\le 1 and a warning is given if that is not true. A warning is given if, possibly as a result of removing illegal values, fewer than two values remain and the return values are set to NA. As can be seen if all the \mjseqn p_i are equal or close to equal this gives a \mjeqn t=\pm \inftyt=+-infty leading to a returned value of 0 or 1. A set of \mjseqn p values with small variance will necessarily give a large value for \mjdeqn \frac \bar zs_\bar z((barz / s_barz)

and hence a small \mjseqn p value which may be smaller than that for another set all of whose primary values are less than any in the first set. See examples for a demonstration.

The plot method for class ‘metap’ calls plotp on the valid pp-values.

Returns

An object of class ‘meanz’ and ‘metap’ , a list with entries - z: The value of the mean \mjseqn z statistic

  • p: The associated \mjseqn p value

  • validp: The input vector with illegal values removed

References

\insertRef becker94metap

Author(s)

Michael Dewey

See Also

See also plotp

Examples

data(dat.metap) beckerp <- dat.metap$beckerp meanz(beckerp) meanz(c(0.1, 0.2)) # greater than next example meanz(c(0.3, 0.31)) # less than above all.equal(exp(meanz(beckerp, log.p = TRUE)$p), meanz(beckerp)$p)
  • Maintainer: Michael Dewey
  • License: GPL-2
  • Last published: 2025-03-15

Useful links