# Locally linear model

### Description

Casdagli test of nonlinearity via locally linear forecasts

### Usage

1 2 3 4 5 6 7 8 |

### Arguments

`x` |
time series |

`m, d, steps` |
embedding dimension, time delay, forecasting steps |

`series` |
time series name (optional) |

`n.ahead` |
n. of steps ahead to forecast |

`eps.min, eps.max` |
min and max neighbourhood size |

`neps` |
number of neighbourhood levels along which iterate |

`eps` |
neighbourhood size |

`onvoid` |
what to do in case of an isolated point: stop or enlarge neighbourhood size by an r% |

`r` |
if an isolated point is found, enlarge neighbourhood window by r% |

`trace` |
tracing level: 0, 1 or more than 1 for |

### Details

`llar`

does the Casdagli test of non-linearity. Given the embedding state-space (of dimension `m`

and time delay `d`

) obtained from time series `series`

, for a sequence of distance values `eps`

, the relative error made by forecasting time series values with a linear autoregressive model estimated on points closer than `eps`

is computed.
If minimum error is reached at relatively small length scales, a global linear model may be inappropriate (using current embedding parameters).
This was suggested by Casdagli(1991) as a test for non-linearity.

`llar.predict`

tries to extend the given time series by
`n.ahead`

points by iteratively
fitting locally (in the embedding space of dimension m and time delay d)
a linear model. If the spatial neighbourhood window is too small, your
time series last point would be probably isolated. You can ask to
automatically enlarge the window `eps`

by a factor of r%
sequentially, until enough neighbours are found for fitting the linear
model.

`llar.fitted`

gives out-of-sample fitted values from locally linear
models.

### Value

`llar`

gives an object of class 'llar'. I.e., a list of components:

`RMSE` |
vector of relative errors |

`eps` |
vector of neighbourhood sizes (in the same order of RMSE) |

`frac` |
vector of fractions of the time series used for RMSE computation |

`avfound` |
vector of average number of neighbours for each point in the time series
which can be plotted using the |

Function `llar.forecast`

gives the vector of n steps ahead locally linear iterated
forecasts.

Function `llar.fitted`

gives out-of-sample fitted values from locally linear
models.

### Warning

For long time series, this can be slow, especially for relatively big neighbourhood sizes.

### Note

The C implementation was re-adapted from that in the TISEAN package ("ll-ar" routine, see references). However, here the euclidean norm is used, in place of the max-norm.

### Author(s)

Antonio, Fabio Di Narzo

### References

M. Casdagli, Chaos and deterministic versus stochastic nonlinear modelling, J. Roy. Stat. Soc. 54, 303 (1991)

Hegger, R., Kantz, H., Schreiber, T., Practical implementation of nonlinear time series methods: The TISEAN package; CHAOS 9, 413-435 (1999)

### Examples

1 2 3 4 5 6 7 8 |

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker. Vote for new features on Trello.