Estimate the proper time lag for single variable delay embeddings


Given the time series X(t), the embedding dimension E, and the time lag tau, the embedding coordinates are defined as X(t), X(t + tau), ... , X(t + (E - 1)*tau). This function can be used to estimate the time lag tau using a variety of statistical methods.


timeLag(x, method="acfzero",



a vector containing a uniformly-sampled real-valued time series.


character string denoting the method to use in estimating the time delay. Supported methods are:


First zero crossing of the autocorrelation function.


First 1/e of the autocorrelation function.


First nadir of the autocorrelation function.


First nadir of the average mutual information function.

Default: "acfzero".

a logical value. If TRUE, a plot of the time lag selection process is displayed. Default: FALSE.


Currently, there exists no single method which yields an optimal time lag estimation although there are some basic criteria that are used: if the lag is chosen too small, the coordinates will be too highly correlated and the embedding will cluster tightly around the diagonal in the phase space. If the lag is chosen too large, the resulting coordinates may be almost uncorrelated and the resulting embedding may become unduly complicated, even if the underlying attractor is not. The goal is to find a lag which falls in-between these scenarios.

In addition the autocorrelation-based methods this function supports an estimation method based on the time-delayed mutual infomation (TDMI), which can be thought of as a nonlinear generalization of the autocorrelation function. For a random process X(t) the TDMI, I(tau), is a measure of the information about X(t+tau) contained in X(t). The first nadir of I(tau) gives the delay, tau0, such that X(t+tau0) adds maximal information to that already known from X(t). This tau0 is returned as an estimate of the proper time lag for a delay embedding of the given time series.


an integer representing the the estimated time lag.


Holger Kantz and Thomas Schreiber (1997), Nonlinear Time Series Analysis, Cambridge University Press.

J.B. Bassingthwaighte and L.S. Liebovitch and B.J. West (1994), Fractal Physiology, Oxford University Press, New York.

A.M. Fraser and H.L. Swinney (1986), Independent coordinates for strange attractors from mutual information, Physical Review A, 33, 1134–40.

M. Casdagli, S. Eubank, J. D. Farmer, and J. Gibson (1991), State Space Reconstruction in the Presence of Noise, Physica D, 51, 52- 98.

See Also

embedSeries, infoDim, corrDim, lyapunov, findNeighbors, KDE, determinism.


## estimate the proper time lag for an embedding 
## of the beamchaos data using the first zero 
## crossing of the ACF 
as.numeric(timeLag(beamchaos, method="acfzero", plot=TRUE))

Want to suggest features or report bugs for Use the GitHub issue tracker.

comments powered by Disqus