Skip to content

Surrogate methods

Random phases Fourier surrogates

Valid inputs

Random phase Fourier surrogates may be generated from the following inputs:

  • AbstractArray{T, 1} instances (scalar-valued data series)
  • AbstractArray{Number, 2} instances (multivarate scalar-valued data series), for which surrogates are generated column-wise.
  • Dataset instances from DynamicalSystems.jl, for which surrogates are generated column-wise.
  • Embedding instances, for which surrogates are generated variable-wise (row-wise on the points).

Documentation

# TimeseriesSurrogates.randomphasesFunction.

randomphases(ts::AbstractArray{T, 1} where T)

Create a random phases surrogate for ts [1]. Surrogate realizations using the phase surrogates have the same linear correlation, or periodogram, as the original data.

ts Is the time series for which to generate an AAFT surrogate realization.

Literature references

  1. J. Theiler et al., Physica D 58 (1992) 77-94 (1992).
randomphases(a::AbstractArray{Number, 2}, cols = 1:size(d, 2))

Column-wise random phases Fourier surrogate of an array, where each column is a scalar-valued time series. cols controls which variables of the embedding are shuffled.

source

randomphases(E::Embeddings.AbstractEmbedding; cols = 1:size(E.points, 1))

Column-wise random phases Fourier surrogate of an embedding. cols controls which variables of the embedding are shuffled.

source

randomphases(d::DynamicalSystemsBase.Dataset; cols = 1:size(d, 2))

Column-wise random phases Fourier surrogate of a Dataset. cols controls which variables of the embedding are shuffled.

source