R/mean2.1980Johansen.R
mean2.1980Johansen.Rd
Given two multivariate data \(X\) and \(Y\) of same dimension, it tests $$H_0 : \mu_x = \mu_y\quad vs\quad H_1 : \mu_x \neq \mu_y$$ using the procedure by Johansen (1980) by adapting Welch-James approximation of the degree of freedom for Hotelling's \(T^2\) test.
mean2.1980Johansen(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.
Johansen S (1980). “The Welch-James Approximation to the Distribution of the Residual Sum of Squares in a Weighted Linear Regression.” Biometrika, 67(1), 85. ISSN 00063444.
## CRAN-purpose small example
smallX = matrix(rnorm(10*3),ncol=3)
smallY = matrix(rnorm(10*3),ncol=3)
mean2.1980Johansen(smallX, smallY) # run the test
#>
#> Two-sample Test for Multivariate Means by Johansen (1980)
#>
#> data: smallX and smallY
#> T2 = 2.546, p-value = 0.5452
#> alternative hypothesis: true means are different.
#>
if (FALSE) {
## 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(mean2.1980Johansen(X,Y)$p.value < 0.05, 1, 0)
}
## print the result
cat(paste("\n* Example for 'mean2.1980Johansen'\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=""))
}