Learn R Programming

corrMCT (version 0.2.0)

corr.WHC: Correlation adjusted weighted Hochberg method

Description

A new method implement correlation correction based on weighted Hochberg. An ACF is applied for weight reduction to conserve alpha. Details see Huang et al. (2024+). A correlation structure with too many zero leads the method reduce to weighted Hochberg.

Usage

corr.WHC(p, w, corr.mat, a = 0.5, b = 0.6, penalty = NULL, alpha = 0.05)

Value

A table contains p-values, weights, adjusted critical values, significance

Arguments

p

A numeric vector. A length \(m\) P-value vector from multiple tests.

w

A numeric vector. Any non-negative real numbers to denote the importance of the endpoints. Length must be equal to \(m\). A single value, e.g. w = 1, represents equal weight. WHC can scale the weight vector as if the sum of weight is not 1.

corr.mat

A matrix. The dimension must be \(m \times m\). Positive correlation is the theoretical assumption, however, it is robust to run with some negative elements in the correlation matrix.

a

A numeric number. \(a \in (0,1)\) determines the greatest penalty on weight, Default a=0.5. Details see Huang et al (2024+).

b

A numeric number. \(b \in (0,1)\) is the shape parameter of the penalty function. \(b = 1\) produce a linear function.

penalty

A function. User can define their own penalty function. The basic rule is the function must be monotone decreasing from 0 to 1, and range from 1 to \(a\) where \(a \in (0,1)\). A convex function is recommended. Concave function can produce result, but have no meaning on alpha conserving.

alpha

A real number. \(1-\alpha\) is the confidence level, alpha must between (0, 1).

References

Huang, X. -W., Hua, J., Banerjee, B., Wang, X., Li, Q. (2024+). Correlated weighted Hochberg procedure. In-preparation.

Examples

Run this code
m <- 5
corr.WHC(
  p = runif(m),
  w = runif(m),
  corr.mat = cor(matrix(runif(10*m), ncol = m))
)

Run the code above in your browser using DataLab