Learn R Programming

rEDM (version 1.8.2)

PredictNonlinear: Test for nonlinear dynamics

Description

PredictNonlinear uses SMap to evaluate prediction accuracy as a function of the localisation parameter theta.

Usage

PredictNonlinear(pathIn = "./", dataFile = "", dataFrame = NULL,
  pathOut = "./",  predictFile = "", lib = "", pred = "", theta = "",
  E = 1, Tp = 1, knn = 0, tau = -1, columns = "", target = "",
  embedded = FALSE, verbose = FALSE, numThreads = 4, showPlot = TRUE)

Arguments

pathIn

path to dataFile.

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 containing output predictions.

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.

theta

A whitespace delimeted string with values of the S-map localisation parameter. An empty string will use default values of [0.01 0.1 0.3 0.5 0.75 1 1.5 2 3 4 5 6 7 8 9].

E

embedding dimension.

Tp

prediction horizon (number of time column rows).

knn

number of nearest neighbors. If knn=0, knn is set to the library size.

tau

lag of time delay embedding specified as number of time column rows.

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.

numThreads

number of parallel threads for computation.

showPlot

logical to plot results.

Value

A data.frame with columns Theta, rho.

Details

The localisation parameter theta weights nearest neighbors according to exp( (-theta D / D_avg) ) where D is the distance between the observation vector and neighbor, D_avg the mean distance. If theta = 0, weights are uniformally unity corresponding to a global autoregressive model. As theta increases, neighbors in closer proximity to the observation are considered.

Examples

Run this code
# NOT RUN {
data(TentMapNoise)
theta.rho <- PredictNonlinear( dataFrame=TentMapNoise, E=2,lib="1 100",
pred="201 500", columns="TentMap", target="TentMap", showPlot = FALSE)
# }

Run the code above in your browser using DataLab