surrogate | R Documentation |

Generates `ns`

surrogate samples from the original data `x`

and computes the standard error and the bias of `statistic`

as in
a bootstrap setup, if `statistic`

is given.

surrogate(x, ns = 1, fft = FALSE, amplitude = FALSE, statistic = NULL, ...)

`x` |
a numeric vector or time series. |

`ns` |
the number of surrogate series to compute. |

`fft` |
a logical indicating whether phase randomized surrogate data is generated. |

`amplitude` |
a logical indicating whether amplitude-adjusted surrogate data is computed. |

`statistic` |
a function which when applied to a time series returns a vector containing the statistic(s) of interest. |

`...` |
Additional arguments for |

If `fft`

is `FALSE`

, then `x`

is mixed in temporal
order, so that all temporal dependencies are eliminated, but the
histogram of the original data is preserved. If `fft`

is
`TRUE`

, then surrogate data with the same spectrum as `x`

is
computed by randomizing the phases of the Fourier coefficients of
`x`

. If in addition `amplitude`

is `TRUE`

, then also
the amplitude distribution of the original series is preserved.

Note, that the interpretation of the computed standard error and bias is different than in a bootstrap setup.

To compute the phase randomized surrogate and the amplitude adjusted data algorithm 1 and 2 from Theiler et al. (1992), pp. 183, 184 are used.

Missing values are not allowed.

If `statistic`

is `NULL`

, then it returns a matrix or time
series with `ns`

columns and `length(x)`

rows containing the
surrogate data. Each column contains one surrogate sample.

If `statistic`

is given, then a list of class
`"resample.statistic"`

with the following elements is returned:

`statistic` |
the results of applying |

`orig.statistic` |
the results of applying |

`bias` |
the bias of the statistics computed as in a bootstrap setup. |

`se` |
the standard error of the statistics computed as in a bootstrap setup. |

`call` |
the original call of |

A. Trapletti

J. Theiler, B. Galdrikian, A. Longtin, S. Eubank, and J. D. Farmer
(1992): Using Surrogate Data to Detect
Nonlinearity in Time Series, in *Nonlinear Modelling and
Forecasting*, Eds. M. Casdagli and S. Eubank, Santa Fe Institute,
Addison Wesley, 163–188.

`sample`

, `tsbootstrap`

x <- 1:10 # Simple example surrogate(x) n <- 500 # Generate AR(1) process e <- rnorm(n) x <- double(n) x[1] <- rnorm(1) for(i in 2:n) { x[i] <- 0.4 * x[i-1] + e[i] } x <- ts(x) theta <- function(x) # Autocorrelations up to lag 10 return(acf(x, plot=FALSE)$acf[2:11]) surrogate(x, ns=50, fft=TRUE, statistic=theta)

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.