streamChaos - Analysis of Nonlinear Data Streams - R package

A framework for analyzing nonlinear data streams (and nonlinear time series).

Based on the package:

Installation

  • In development.

Usage

Load the package and create a data stream based on a transient Logistic Map:

$x_t = r_t \cdot x_{t-1} (1 - x_{t-1})$,

in which $r_t \in [2.0, 4.0]$.


In [2]:
options(warn=-1)

library("streamChaos")

dsd <- NLDSD_TransientLogisticMap(N=12000)

Process such stream using the Permutation Entropy algorithm with a sliding window of $800$ observations, sliding $10$ observations by iteration.


In [3]:
pe <- DSCDD_PermutationEntropy(m=5, d=1, window.length=800)

ret <- processStream(dsd, pe, window.step=10)

Plot the results.


In [10]:
options(repr.plot.width=7, repr.plot.height=5)

plot(ret$ds[,1], pch='.', ylab='x')
par(new=T, xaxt='n', yaxt='n')
ts.plot(ret$measures, col=2, xlab='', ylab='', lwd=2)


References

Algorithms:

  • [Permutation Entropy]
  • [Recurrence Quantification Analysis]
  • [Multidimensional Fourier Transform]
  • [Permutation-Invariant]

Data streams:

  • [Transient Logistic Map]
  • [Transient Lorenz Attractor]