View source: R/LRT04_EqualityPopulations.R
LRT04_EqualityPopulations | R Documentation |
LRT04_EqualityPopulations(W, n, p, q, options)
computes p
-value of the log-transformed LRT
statistic W = -log(\Lambda)
, for testing the null hypothesis of equality
of q
(q > 1
) p
-dimensional normal populations, and/or its null distribution CF/PDF/CDF.
This is based on BALANCED samples of size n for each population!
This is an EXPERIMENTAL version. Correctness should be checked again!
LRT04_EqualityPopulations(W, n, p, q, options)
W |
observed value of the minus log-transformed LRT statistic
|
n |
sample size, |
p |
common dimension of the vectors |
q |
number of normal populations, |
options |
option structure, for more details see |
In particular, let X_k ~ N_p(\mu_k,\Sigma_k)
, for k = 1,...,q
. We want to
test the hypothesis that the q
normal populations are equally
distributed. That is, we want to test that the
mean vectors \mu_k
are equal for all k = 1,...,q
, as well as the
covariance matrices \Sigma_k
are equal for all k = 1,...,q
. Then,
the null hypothesis is given as H0: \mu_1 = ... = \mu_q
& \Sigma_1 = ... = \Sigma_k
.
Here, the null hypothesis H0 and the LRT statistic can be decomposed:
\Lambda = \Lambda_Means * \Lambda_Covariances
where (first) \Lambda_Covariances
represents the LRT for testing equality of
covariance matrices of given q
normal populations, and (second)
\Lambda_Means
represents (conditionally) the LRT for testing equality of
means of given q
normal populations.
Under null hypothesis, distributions of \Lambda_Covariances
and
\Lambda_Means
are independent, and the distribution of the test statistic
\Lambda
is Lambda ~ \Lambda_Means * \Lambda_Covariances
,
~ (prod_{k=1}^q prod_{j=1}^{p} (B_{jk})^{n/2})* (prod_{j=1}^{p} (B_j)^{n*q/2})
where the B_{jk}
and B_j
are mutually independent beta distributed
random variables. Here we assume that n
is equal sample size for each
sample, k = 1,...,q
, n > p
.
Hence, the exact characteristic function of the null distribution of
minus log-transformed LRT statistic Lambda, say W = -log(\Lambda)
is given by
cf = function(t) {cf_LogRV_Beta(-(n/2)*t, (n-j)/2, (j*(q-1)+2*k-1-q)/(2*q))}
. * cf_LogRV_Beta(-(n*q/2)*t, ((n-1)*q-i+1)/2, (q-1)/2),
where i = (1, 2, ..., p)
, k = (1*o,...,q*o)
with p
-dimensional vector
of ones o = (1,...,1)
and j = (j_1,...,j_q)
with j_k = 1:p
.
p
-value of the log-transformed LRT statistic, W = -log(\Lambda)
and/or its null distribution CF/PDF/CDF.
Ver.: 16-Sep-2018 21:10:45 (consistent with Matlab CharFunTool v1.3.0, 20-Jan-2018 12:43:15).
[1] ANDERSON, Theodore Wilbur. An Introduction to Multivariate Statistical Analysis. New York: Wiley, 3rd Ed., 2003.
[2] MARQUES, Filipe J.; COELHO, Carlos A.; ARNOLD, Barry C. A general near-exact distribution theory for the most common likelihood ratio test statistics used in Multivariate Analysis. Test, 2011, 20.1:180-203.
[3] WITKOVSKY, Viktor. Exact distribution of selected multivariate test
criteria by numerical inversion of their characteristic functions.
arXiv preprint arXiv:1801.02248, 2018.
Other Likelihood Ratio Test:
LRT01_Independence()
,
LRT02_EqualityMeans()
,
LRT03_EqualityCovariances()
,
LRT05_Sphericity()
## EXAMPLE
# LRT for testing hypothesis on equality of populations
# Null distribution of the minus log-transformed LRT statistic
n <- 30 # total sample size
p <- 8 # dimension of X_k, k = 1,...,q where q = 5
q <- 5 # number of populations
# W <- vector() # observed value of W = -log(Lambda)
options <- list()
# options.coef = -1;
options$prob <- c(0.9, 0.95, 0.99)
output <- LRT04_EqualityPopulations(n = n, p = p, q = q, options = options)
str(output)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.