Simplex forecasting
Simplex
performs time series forecasting based on
weighted nearest neighbors projection in the time series phase space as
described in Sugihara and May.
Simplex(pathIn = "./", dataFile = "", dataFrame = NULL, pathOut = "./", predictFile = "", lib = "", pred = "", E = 0, Tp = 1, knn = 0, tau = -1, exclusionRadius = 0, columns = "", target = "", embedded = FALSE, const_pred = FALSE, verbose = FALSE, validLib = vector(), generateSteps = 0, parameterList = FALSE, showPlot = FALSE)
pathIn |
path to |
dataFile |
.csv format data file name. The first column must be a time index or time values. The first row must be column names. |
dataFrame |
input data.frame. The first column must be a time index or time values. The columns must be named. |
pathOut |
path for |
predictFile |
output file name. |
lib |
string with start and stop indices of input data rows used to create the library of observations. A single contiguous range is supported. |
pred |
string with start and stop indices of input data rows used for predictions. A single contiguous range is supported. |
E |
embedding dimension. |
Tp |
prediction horizon (number of time column rows). |
knn |
number of nearest neighbors. If knn=0, knn is set to E+1. |
tau |
lag of time delay embedding specified as number of time column rows. |
exclusionRadius |
excludes vectors from the search space of nearest neighbors if their relative time index is within exclusionRadius. |
columns |
string of whitespace separated column name(s) in the input data used to create the library. |
target |
column name in the input data used for prediction. |
embedded |
logical specifying if the input data are embedded. |
verbose |
logical to produce additional console reporting. |
const_pred |
logical to add a constant predictor column to the output. The constant predictor is X(t+1) = X(t). |
validLib |
logical vector the same length as the number of data rows. Any data row represented in this vector as FALSE, will not be included in the library. |
generateSteps |
number of predictive feedback generative steps. |
parameterList |
logical to add list of invoked parameters. |
showPlot |
logical to plot results. |
If embedded is FALSE
, the data column(s)
are embedded to
dimension E
with time lag tau
. This embedding forms an
E-dimensional phase space for the Simplex
projection.
If embedded is TRUE
, the data are assumed to contain an
E-dimensional embedding with E equal to the number of columns
.
Predictions are made using leave-one-out cross-validation, i.e.
observation vectors are excluded from the prediction simplex.
To assess an optimal embedding dimension EmbedDimension
can be applied. Accuracy statistics can be estimated by
ComputeError
.
A data.frame with columns Observations, Predictions
. If
const_pred
is TRUE the column Const_Predictions
is added.
The first column contains the time values.
If parameterList = TRUE
, a named list with "predictions" holding the
data.frame, "parameters" with a named list of invoked parameters.
Sugihara G. and May R. 1990. Nonlinear forecasting as a way of distinguishing chaos from measurement error in time series. Nature, 344:734-741.
data( block_3sp ) smplx <- Simplex( dataFrame = block_3sp, lib = "1 100", pred = "101 190", E = 3, columns = "x_t", target = "x_t" ) ComputeError( smplx $ Predictions, smplx $ Observations )
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.