# Estimate the proper time lag for single variable delay embeddings

### Description

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.

### Usage

1 |

### Arguments

`x` |
a vector containing a uniformly-sampled real-valued time series. |

`method` |
character string denoting the method to use in estimating the time delay. Supported methods are: `"acfzero"` First zero crossing of the autocorrelation function. `"acfdecor"` First *1/e*of the autocorrelation function.`"acfnadir"` First nadir of the autocorrelation function. `"mutual"` First nadir of the average mutual information function.
Default: |

`plot.data` |
a logical value. If |

### Details

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.

### Value

an integer representing the the estimated time lag.

### References

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`

.

### Examples

1 2 3 4 | ```
## 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))
``` |