Performs the random projection test for normality. The null hypothesis (H0) is that the given data follows a stationary Gaussian process, and k is the number of used random projections.
rp.test(y,k = 16,FDR = TRUE,pars1 = c(100,1),pars2 = c(2,7),seed = NULL)
a h.test class with the main results of the Epps hypothesis test. The h.test class have the following values:
"k"The number of used projections
"lobato"The average Lobato and Velasco's test statistics of the k projected samples
"epps"The average Epps test statistics of the k projected samples
"p.value"The mixed p value
"alternative"The alternative hypothesis
"method"The used method: rp.test
"data.name"The data name.
a numeric vector or an object of the ts
class containing a stationary time series.
an integer with the number of random projections to be used, by default
k = 16
.
a logical value for mixing the p-values using a dependent False discovery
rate method. If FDR =TRUE
, then the p-values are mixed using a False discovery Rate method,
on the contrary it applies the Benjamin and Yekuteli (2001) procedure. By default FDR = TRUE
.
an optional real vector with the shape parameters of the beta distribution
used for the odd number random projection. By default, pars1 = c(100,1)
where,
shape1 = 100
and shape2 = 1
.
an optional real vector with the shape parameters of the beta distribution
used for the even number random projection. By default, pars2 = c(2,7)
where,
shape1 = 2
and shape2 = 7
.
An optional seed
to use.
Asael Alonzo Matamoros and Alicia Nieto-Reyes.
The random projection test generates k independent random projections of the process. A Lobato and Velasco's test are applied to the first half of the projections, and an Epps test for the other half. Then, a False discovery rate is used for mixing the obtained p.values
For generating the k random projections a beta distribution is used. By default a
beta(shape1 = 100,shape = 1)
and a beta(shape1 = 2,shape = 7)
are used
to generate the odd and even projections respectively. For using a different parameter
set, change pars1
or pars2
.
The test was proposed by Nieto-Reyes, A.,Cuesta-Albertos, J. & Gamboa, F. (2014).
Nieto-Reyes, A., Cuesta-Albertos, J. & Gamboa, F. (2014). A random-projection based test of Gaussianity for stationary processes. Computational Statistics & Data Analysis, Elsevier, vol. 75(C), pages 124-141.
Epps, T.W. (1987). Testing that a stationary time series is Gaussian. The Annals of Statistic. 15(4), 1683-1698.
Lobato, I., & Velasco, C. (2004). A simple test of normality in time series. Journal of econometric theory. 20(4), 671-689.
lobato.test
epps.test
# Generating an stationary arma process
y = arima.sim(100,model = list(ar = 0.3))
rp.test(y,k = 4)
Run the code above in your browser using DataLab