unif.2017YMq {SHT} | R Documentation |
Multivariate Test of Uniformity based on Normal Quantiles by Yang and Modarres (2017)
Description
Given a multivariate sample X
, it tests
H_0 : \Sigma_x = \textrm{ uniform on } \otimes_{i=1}^p [a_i,b_i] \quad vs\quad H_1 : \textrm{ not } H_0
using the procedure by Yang and Modarres (2017). Originally, it tests the goodness of fit
on the unit hypercube [0,1]^p
and modified for arbitrary rectangular domain. Since
this method depends on quantile information, every observation should strictly reside within
the boundary so that it becomes valid after transformation.
Usage
unif.2017YMq(X, lower = rep(0, ncol(X)), upper = rep(1, ncol(X)))
Arguments
X |
an |
lower |
length- |
upper |
length- |
Value
a (list) object of S3
class htest
containing:
- statistic
a test statistic.
- p.value
p
-value underH_0
.- alternative
alternative hypothesis.
- method
name of the test.
- data.name
name(s) of provided sample data.
References
Yang M, Modarres R (2017). “Multivariate tests of uniformity.” Statistical Papers, 58(3), 627–639. ISSN 0932-5026, 1613-9798.
Examples
## CRAN-purpose small example
smallX = matrix(runif(10*3),ncol=3)
unif.2017YMq(smallX) # run the test
## empirical Type 1 error
niter = 1234
counter = rep(0,niter) # record p-values
for (i in 1:niter){
X = matrix(runif(50*5), ncol=25)
counter[i] = ifelse(unif.2017YMq(X)$p.value < 0.05, 1, 0)
}
## print the result
cat(paste("\n* Example for 'unif.2017YMq'\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=""))