Skip to content

Some procedures and utilites for time series analyses

Notifications You must be signed in to change notification settings

Anthony-Cov/Libraries

Repository files navigation

Libraries

Some procedures and utilities for time series forecast and analysis which were included in some other projects.

Forecasting

  • Autoregr.py - forecast model of Vector Autoregression with additional series.
  • ChooChoo.py - forecast model of Maximal Similarity with additional series.(described in A. Kovantsev, P. Chunaev and K. Bochenina, "Evaluating Time Series Predictability via Transition Graph Analysis," 2021 International Conference on Data Mining Workshops (ICDMW), Auckland, New Zealand, 2021, pp. 1039-1046, doi: 10.1109/ICDMW53433.2021.00135 section III-B)
  • Localapp.py - forecast model of Local Approximation with additional series. (described in A. Kovantsev and P. Gladilin, "Analysis of multivariate time series predictability based on their features," 2020 International Conference on Data Mining Workshops (ICDMW), Sorrento, Italy, 2020, pp. 348-355 doi: 10.1109/ICDMW51313.2020.00055 section V-B)
  • NeurosV.py - forecast model of LSTM neural network with additional series.
  • Spectrum.py - forecast model of MSSA with additional series.
    for tests: Autoregr.VARExplore, Spectrum.MSSAExplore, NeurosV.LSTMExploreV, Localapp.LAprExplore ChooChoo.ChooChooExplore. The input parameters of the procedures are also unified: a time series of data for one of the regions, a list of predictor dictionaries obtained from selection procedures or an empty list when working without predictors, the forecast horizon, which is also the size of the test sample, the split point is the position of the last value of the training sample from the end original row. The output of all procedures is a tuple containing the values of the mean error, mean absolute error, mean relative percentage error, symmetric mean relative percent error, standard deviation, and predicted series for the test subset of values. All errors are calculated for test data;

    Time series features used in the research

  • EmbDim.cpp - dynamic system embedding dimension used for the Maximal Similarity and Local Approximation methods. Should be compiled with GCC like "gcc -fPIC -shared -o EmbDim.so EmbDim.cpp -lstdc++" to get EmbDim.so
  • EmbDim.h - C++ header for compillation
  • EmbDim.so - object module for python implementation
  • features.py - contains the procedure of embedding dimension calculation with no C++, which works much slower

    Causality tests for predictors choice

  • Tests.py - includes cross-correlation, Granger's test, Convergent Cross Mapping (CCM)
    For choosing predictors: Tests.ChoosePredsGranI> - by Granger test, Tests.ChoosePredsCCor - by cross-correlation, Tests.ChoosePredsCCM - by convergent joint representation, Tests.ChoosePredsVAR - by vector autoregression forecast quality. The input parameters of the procedures are unified: a time series of data for one of the regions, a list of names of available predictor files, the number of predictors for selection. The output is a list of dictionaries containing the file name, the value of the selection criterion, the time lag at which this criterion takes the best value;

    Utilites

  • Util.py - utilites like series rescaling, quality metrics calculation, noise filtering and so on

    Idle in this research

  • CorrEntr.cpp, CorrEntr.h, CorrEntr.so - Correlation entropy
  • fakeseries.py and generator.py - artificial time series generator
  • graph.py - time series to transition grapg transformation
  • HurstExp.cpp, HurstExp.h, HurstExp.so- Hurst exponent calculation
  • About

    Some procedures and utilites for time series analyses

    Resources

    Stars

    Watchers

    Forks

    Releases

    No releases published

    Packages

    No packages published