llar(x, m, d = 1, steps = d, series, eps.min = sd(x)/2,
eps.max = diff(range(x)), neps = 30, trace = 0)llar.predict(x, m, d=1, steps=d, series, n.ahead=1,
eps=stop("you must specify a window value"),
onvoid=c("fail","enlarge"), r = 20, trace=1)
llar.fitted(x, m, d=1, steps=d, series, eps, trace=0)
llar
, 0 or
1 for llar.forecast
llar
gives an object of class 'llar'. I.e., a list of components:
which can be plotted using the plot
method, and transformed to a regular
data.frame
with the as.data.frame
function.
llar.forecast
gives the vector of n steps ahead locally linear iterated
forecasts.
llar.fitted
gives out-of-sample fitted values from locally linear
models.
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 neighborhood 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.
Hegger, R., Kantz, H., Schreiber, T., Practical implementation of nonlinear time series methods: The TISEAN package; CHAOS 9, 413-435 (1999)
res <- llar(log(lynx), m=3, neps=7)
plot(res)
x.new <- llar.predict(log(lynx),n.ahead=100, m=3, eps=1,
onvoid="enlarge", r=5)
lag.plot(x.new, labels=FALSE)
x.fitted <- llar.fitted(log(lynx), m=3, eps=1)
lag.plot(x.fitted, labels=FALSE)
Run the code above in your browser using DataLab