per_boo {boodd} | R Documentation |
Bootstrap of Periodogram
Description
Computes periodogram values at Fourier frequencies for a time series, smooths the periodogram to estimate the spectral density, and generates the bootstrap version of the periodogram.
Usage
per_boo(x, B, taper0 = 0)
Arguments
x |
A vector or a time series. |
B |
A positive integer; the number of bootstrap replications. |
taper0 |
A numeric value; specifies the proportion of data to taper. The default value is 0, that is there is no tapering. |
Details
The function first centers the input time series and calculates the values of
the periodogram
at Fourier frequencies using spec.pgram
. Spectral density is then estimated by applying
a kernel smoother to the periodogram values, with the smoothing bandwidth computed as
sd(x) * n^(-1/3)
. Bootstrap is then performed by resampling periodogram ordinates.
The function outputs a graph of the histogram of the periodogram ordinates which should be close to an exponential density.
Value
A list containing:
-
obj
: A list of class "boodd" containing the bootstrap periodograms. -
freqs
: A vector of Fourier frequencies used in the periodogram estimation.
References
Bertail, P. and Dudek, A. (2025). Bootstrap for Dependent Data, with an R package (by Bernard Desgraupes and Karolina Marek) - submitted..
Bertail, P. and Dudek, A.E. (2021). Consistency of the Frequency Domain Bootstrap for differentiable functionals, Electron. J. Statist., 15, 1-36.
Hurvich, C. M. and Zeger, S. L. (1987). Frequency domain bootstrap methods for time series, Technical Report 87-115, Graduate School of Business Administration, New York Univ.
Lahiri, S.N. (2003). Resampling Methods for Dependent Data. Springer, New York.
See Also
Examples
set.seed(12345)
x=arima.sim(model=list(ar=0.8),n=200)
boo1=per_boo(x,99)
fn=length(boo1[[2]])
spec.pgram(x, plot=TRUE)
# Superimposed plots of 99 bootstrap periodograms
for ( i in (1:99)) {
lines(boo1[[2]],t(boo1[[1]]$s)[,i], type="l", col=i)
}