R/cov2.2013CLX.R
cov2.2013CLX.Rd
Given two multivariate data \(X\) and \(Y\) of same dimension, it tests $$H_0 : \Sigma_x = \Sigma_y\quad vs\quad H_1 : \Sigma_x \neq \Sigma_y$$ using the procedure by Cai, Liu, and Xia (2013).
cov2.2013CLX(X, Y)
an \((n_x \times p)\) data matrix of 1st sample.
an \((n_y \times p)\) data matrix of 2nd sample.
a (list) object of S3
class htest
containing:
a test statistic.
\(p\)-value under \(H_0\).
alternative hypothesis.
name of the test.
name(s) of provided sample data.
Cai T, Liu W, Xia Y (2013). “Two-Sample Covariance Matrix Testing and Support Recovery in High-Dimensional and Sparse Settings.” Journal of the American Statistical Association, 108(501), 265--277. ISSN 0162-1459, 1537-274X.
## CRAN-purpose small example
smallX = matrix(rnorm(10*3),ncol=3)
smallY = matrix(rnorm(10*3),ncol=3)
cov2.2013CLX(smallX, smallY) # run the test
#>
#> Two-sample Test for Covariance Matrices by Cai, Liu, and Xia (2013)
#>
#> data: smallX and smallY
#> statistic = 1.2388, p-value = 0.6023
#> alternative hypothesis: two covariances are not equal.
#>
# \donttest{
## empirical Type 1 error
niter = 1000
counter = rep(0,niter) # record p-values
for (i in 1:niter){
X = matrix(rnorm(50*5), ncol=10)
Y = matrix(rnorm(50*5), ncol=10)
counter[i] = ifelse(cov2.2013CLX(X, Y)$p.value < 0.05, 1, 0)
}
## print the result
cat(paste("\n* Example for 'cov2.2013CLX'\n","*\n",
"* number of rejections : ", sum(counter),"\n",
"* total number of trials : ", niter,"\n",
"* empirical Type 1 error : ",round(sum(counter/niter),5),"\n",sep=""))
#>
#> * Example for 'cov2.2013CLX'
#> *
#> * number of rejections : 65
#> * total number of trials : 1000
#> * empirical Type 1 error : 0.065
# }