simultest.pe.fisher {PEtests} | R Documentation |
Two-sample PE simultaneous test using Fisher's combination
Description
This function implements the two-sample PE simultaneous test on
high-dimensional mean vectors and covariance matrices using Fisher's combination.
Suppose \{\mathbf{X}_1, \ldots, \mathbf{X}_{n_1}\}
are i.i.d.
copies of \mathbf{X}
, and \{\mathbf{Y}_1, \ldots, \mathbf{Y}_{n_2}\}
are i.i.d. copies of \mathbf{Y}
.
Let M_{PE}
and T_{PE}
denote
the PE mean test statistic and PE covariance test statistic, respectively.
(see meantest.pe.comp
and covtest.pe.comp
for details).
Let p_{m}
and p_{c}
denote their respective p
-values.
The PE simultaneous test statistic via Fisher's combination is defined as
J_{PE} = -2\log(p_{m})-2\log(p_{c}).
It has been proved that with some regularity conditions, under the null hypothesis
H_0: \boldsymbol{\mu}_1 = \boldsymbol{\mu}_2 \ \text{ and }
\ \mathbf{\Sigma}_1 = \mathbf{\Sigma}_2
,
the two tests are asymptotically independent as n_1, n_2, p\rightarrow \infty
,
and therefore J_{PE}
asymptotically converges in distribution to
a \chi_4^2
distribution.
The asymptotic p
-value is obtained by
p\text{-value} = 1-F_{\chi_4^2}(J_{PE}),
where F_{\chi_4^2}(\cdot)
is the cdf of the \chi_4^2
distribution.
Usage
simultest.pe.fisher(dataX,dataY,delta_mean=NULL,delta_cov=NULL)
Arguments
dataX |
an |
dataY |
an |
delta_mean |
a scalar; the thresholding value used in the construction of
the PE component for mean test; see |
delta_cov |
a scalar; the thresholding value used in the construction of
the PE component for covariance test; see |
Value
stat
the value of test statistic
pval
the p-value for the test.
References
Yu, X., Li, D., Xue, L., and Li, R. (2022). Power-enhanced simultaneous test of high-dimensional mean vectors and covariance matrices with application to gene-set testing. Journal of the American Statistical Association, (in press):1–14.
Examples
n1 = 100; n2 = 100; pp = 500
set.seed(1)
X = matrix(rnorm(n1*pp), nrow=n1, ncol=pp)
Y = matrix(rnorm(n2*pp), nrow=n2, ncol=pp)
simultest.pe.fisher(X,Y)