R: Surrogate Time Series Through AR Modeling (Sieve Bootstrap)
surrogate.AR
R Documentation
Surrogate Time Series Through AR Modeling (Sieve Bootstrap)
Description
Starting from a time series x given as input, the function generates surrogate series by means of the sieve bootstrap.
The surrogates can be used for testing for non linearity in time series.
a univariate numeric time series object or a numeric vector.
order.max
maximum order of the AR model to fit.
fit.method
character string giving the method used to fit the AR model.
Must be one of the strings in the default argument (the first few characters are sufficient). Defaults to "yule-walker".
nsurr
number of surrogates.
Details
N is the length of the series x. The best AR model is chosen by means of the AIC criterion. The residuals of the model are
resampled with replacement. Surrogate series are obtained by driving the fitted model with the resampled residuals.
Value
A list with the following elements:
surr
a matrix with N rows and nsurr columns, in each column is stored a surrogate.
call
contains the call to the routine.
Author(s)
Simone Giannerini<simone.giannerini@unibo.it>
References
Giannerini S., Maasoumi E., Bee Dagum E., (2015), Entropy testing
for nonlinear serial dependence in time series, Biometrika, forthcoming
http://doi.org/10.1093/biomet/asv007.
Buhlmann, P., (1997). Sieve bootstrap for time series.
Bernoulli, 3, 123–148.
See Also
See also surrogate.AR, Trho.test.AR, surrogate.SA, Trho.test.SA.
Examples
set.seed(1345)
# Generates a AR(1) series
x <- arima.sim(n=120, model = list(ar=0.8));
x.surr <- surrogate.AR(x, order.max=10, nsurr=3);
plot.ts(x.surr$surr,col=4);
## Check that the surrogates have the same ACF of x
corig <- acf(x,10,plot=FALSE)$acf[,,1];
csurr <- acf(x.surr$surr[,1],10,plot=FALSE)$acf[,,1];
round(cbind(corig,csurr,"abs(difference)"=abs(corig-csurr)),3)