tft_boot {boodd}R Documentation

TFT Bootstrap.

Description

This function implements the Time Frequency Toggle (TFT)-Bootstrap introduced in Kirch and Politis (2011).

Usage

tft_boot(
  X,
  n = length(X),
  func,
  h = length(X)^{
     -2/3
 },
  kernel = 1,
  B,
  option = "local"
)

Arguments

X

A numeric vector representing a time series.

n

An integer; by default is the length of time series X but allow for a smaller sample size m to perform moon bootstrap.

func

A function to be applied to each column of the TFT bootstrap samples.

h

A numeric value specifying the bandwidth used to compute the kernel estimator in case of local bootstrap. By default it is equal to n^{-2/3}.

kernel

An integer value indicating the kernel type. Use 0 for the Daniell kernel or any other value for the Bartlett-Priestley (Epanechnikov) kernel (by default).

B

An integer indicating the number of bootstrap replications.

option

A character string specifying the bootstrap method: "local" for local bootstrap, "wild" for wild bootstrap, and "res" for residual bootstrap.

Details

The function performs the Time Frequency Toggle (TFT)-Bootstrap. Its basic idea is to bootstrap the Fourier coefficients of the observed time series, and then back-transforming them to obtain a bootstrap sample in the time domain (see Kirch and Politis (2011)). Then it computes the specified function, func, on each bootstrap replicate. Depending on the option, different bootstrap methods are used to construct bootstrap samples:

Value

An object of class "boodd".

Author(s)

We are grateful to Claudia Kirch for providing the original code in R.

References

Bertail, P. and Dudek, A. (2025). Bootstrap for Dependent Data, with an R package (by Bernard Desgraupes and Karolina Marek) - submitted.

Kirch, C. and Politis, D. N. (2011). TFT-Bootstrap: Resampling time series in the frequency domain to obtain replicates in the time domain. Annals of Statistics, vol. 39, pp. 1427-1470

See Also

boot_local, boot_res, boot_wild.

Examples

n=2000
phi0=0.5
p0=length(phi0)
theta0=0
q0=length(theta0)
sim <- arima.sim(n , model=list(ar = phi0, ma = theta0))
# The function to be bootstrapped using tft_boot (both variance and acf of order 1)
vc<-function(X){return(c(var(X),acf(X,plot=FALSE)$acf[2]))}
coeff=vc(sim)
bb1=tft_boot(sim,n=n,func=vc,B=999,option="local")
bb2=tft_boot(sim,n=n,func=vc,B=999,option="res")
bb3=tft_boot(sim,n=n,func=vc,B=999,option="wild")

[Package boodd version 0.1 Index]