Calculate the correlation matrix between multiple GFisher statistics, each potentially having different degrees of freedom and weights.

getGFisherCOR(DD, W, M, var.correct = TRUE, p.type = "two")

Arguments

DD

An \(m \times n\) matrix of degrees of freedom, where \(m\) is the number of GFisher statistics and \(n\) is the number of p-values combined by each GFisher test.

W

An \(m \times n\) matrix of weights, where \(m\) is the number of GFisher statistics and \(n\) is the number of p-values combined by each GFisher test.

M

Correlation matrix of the input Z-scores from which the input p-values were obtained.

var.correct

Logical, passed to getGFishercov(). Default TRUE.

p.type

Character string: "two" for two-sided (default), "one" for one-sided input p-values.

Value

An \(m \times m\) correlation matrix between the GFisher statistics \(T^{(1)}, T^{(2)}, ..., T^{(m)}\).

Details

Calculate Correlation Matrix Between Multiple GFisher Statistics

This function computes the correlation matrix among multiple GFisher statistics by:

  1. Computing all pairwise covariances using getGFishercov

  2. Converting the covariance matrix to a correlation matrix

The correlation matrix is used in the minimum p-value approach of the oGFisher test to compute the p-value via multivariate normal distribution.

Each row of DD and W represents the configuration (degrees of freedom and weights) for one GFisher test.

References

Zhang, H., & Wu, Z. (2023). The generalized Fisher's combination and accurate p-value calculation under dependence. Biometrics, 79(2), 1159-1172. See Corollary 2.

Author

Hong Zhang