This function implements the two-sample PE covariance test via the
construction of the PE component. Let \(T_{LC}/\hat\sigma_{T_{LC}}\)
denote the \(l_2\)-norm-based covariance test statistic
(see covtest.lc
for details).
The PE component is constructed by
$$J_c=\sqrt{p}\sum_{i=1}^p\sum_{j=1}^p T_{ij}\widehat\xi^{-1/2}_{ij}
\mathcal{I}\{ \sqrt{2}T_{ij}\widehat\xi^{-1/2}_{ij} +1 > \delta_{cov} \}, $$
where \(\delta_{cov}\) is a threshold for the screening procedure,
recommended to take the value of \(\delta_{cov}=4\log(\log (n_1+n_2))\log p\).
The explicit forms of \(T_{ij}\) and \(\widehat\xi_{ij}\)
can be found in Section 3.2 of Yu et al. (2022).
The PE covariance test statistic is defined as
$$T_{PE}=T_{LC}/\hat\sigma_{T_{LC}}+J_c.$$
With some regularity conditions, under the null hypothesis
\(H_{0c}: \mathbf{\Sigma}_1 = \mathbf{\Sigma}_2\),
the test statistic \(T_{PE}\) converges in distribution to
a standard normal distribution as \(n_1, n_2, p \rightarrow \infty\).
The asymptotic \(p\)-value is obtained by
$$p\text{-value}=1-\Phi(T_{PE}),$$
where \(\Phi(\cdot)\) is the cdf of the standard normal distribution.
covtest.pe.comp(dataX,dataY,delta=NULL)
stat
the value of test statistic
pval
the p-value for the test.
an \(n_1\) by \(p\) data matrix
an \(n_2\) by \(p\) data matrix
a scalar; the thresholding value used in the construction of the PE component. If not specified, the function uses a default value \(\delta_{cov}=4\log(\log (n_1+n_2))\log p\).
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.
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)
covtest.pe.comp(X,Y)
Run the code above in your browser using DataLab