R/cov2.2012LC.R
cov2.2012LC.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 Li and Chen (2012).
cov2.2012LC(X, Y, use.unbiased = TRUE)
an \((n_x \times p)\) data matrix of 1st sample.
an \((n_y \times p)\) data matrix of 2nd sample.
a logical; TRUE
to use up to 4th-order U-statistics as proposed in the paper, FALSE
for faster run under an assumption that \(\mu_h = 0\) (default: TRUE
).
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.
Li J, Chen SX (2012). “Two sample tests for high-dimensional covariance matrices.” The Annals of Statistics, 40(2), 908--940. ISSN 0090-5364.
## CRAN-purpose small example
smallX = matrix(rnorm(10*4),ncol=5)
smallY = matrix(rnorm(10*4),ncol=5)
cov2.2012LC(smallX, smallY) # run the test
#>
#> Two-sample Test for High-Dimensional Covariances by Li and Chen (2012)
#>
#> data: smallX and smallY
#> statistic = 2.4537, p-value = 0.00707
#> alternative hypothesis: two covariances are not equal.
#>
if (FALSE) {
## empirical Type 1 error : use 'biased' version for faster computation
niter = 1000
counter = rep(0,niter)
for (i in 1:niter){
X = matrix(rnorm(500*25), ncol=10)
Y = matrix(rnorm(500*25), ncol=10)
counter[i] = ifelse(cov2.2012LC(X,Y,use.unbiased=FALSE)$p.value < 0.05,1,0)
print(paste0("iteration ",i,"/1000 complete.."))
}
## print the result
cat(paste("\n* Example for 'cov2.2012LC'\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=""))
}