| p_hmean | R Documentation |
Combines study-level results using the harmonic mean combination method
p_hmean(
estimates,
SEs,
mu = 0,
phi = NULL,
tau2 = NULL,
heterogeneity = "none",
check_inputs = TRUE,
w = rep(1, length(estimates)),
distr = "chisq"
)
estimates |
Numeric vector of study-level effect estimates. |
SEs |
Numeric vector of corresponding standard errors. |
mu |
Numeric scalar or vector of null values for the overall effect (default: 0). |
phi |
A numeric vector of length 1. Must be finite and larger than 0. The square root of the argument is used to scale the standard errors. |
tau2 |
A numeric vector of length 1. Additive heterogeneity parameter. |
heterogeneity |
One of |
check_inputs |
Either |
w |
Numeric vector of nonnegative weights, same length as |
distr |
The distribution to use for the calculation of the p-value. Currently, the options are
|
The harmonic mean statistic for k studies is defined as
x^2 = \frac{\sum_{i=1}^k \sqrt{w_i}}{\sum_{i=1}^k w_i/z_i^2},
where z_i and {w_i} are individual study z-values and weights,
respectively. Under the global null hypothesis, each z_i is assumed to
follow a standard normal distribution. The harmonic mean statistic then
follows a chi-squared distribution with one degree of freedom. The combined
p-value is calculated as the probability of observing a value equal or
greater than x^2 from this distribution:
p_H = \Pr(\chi^2_{1} >
x^2)
A numeric vector of combined p-values corresponding
to each value of mu.
Held, L. (2020). The harmonic mean chi-squared test to substantiate scientific findings. Journal of the Royal Statistical Society: Series C (Applied Statistics), 69:697-708. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1111/rssc.12410")}
Held, L, Hofmann, F, Pawel, S. (2025). A comparison of combined p-value functions for meta-analysis. Research Synthesis Methods, 16:758-785. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1017/rsm.2025.26")}
Other p-value combination functions:
p_edgington(),
p_edgington_w(),
p_fisher(),
p_pearson(),
p_stouffer(),
p_tippett(),
p_wilkinson()
estimates <- c(0.5, 0.8, 0.3)
SEs <- c(0.1, 0.2, 0.1)
p_hmean(estimates, SEs, mu = 0, distr = "f")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.