Skip to content

Py-SSA-Lib: Python implementation of the multichannel singular spectrum analysis (MSSA) and singular spectrum analysis (SSA)

License

Notifications You must be signed in to change notification settings

K-Ibadullaev/py-ssa-lib

Repository files navigation

PY-SSA-LIB PACKAGE

Intro

Welcome to the page of the py-ssa-lib package! This package contains python implementations of the Singular Spectrum Analysis(SSA) and Multichannel Singular Spectrum Analysis(MSSA).

It can be used for the time series analysis and forecasting.

Please, take a look on the guides for SSA and MSSA which are available in the corresponding directory !

NEW: The Wiki for the py-ssa-lib package is now available and will be periodically updated. It contains some theoretical background about the MSSA and SSA.

Installation

$ python -m pip install py-ssa-lib

Requirements

The required packages are listed in the requirements.txt and can be installed from this file via pip.

All dependencies should be automatically installed during the installation of the py-ssa-lib

The classes in the py-ssa-lib heavily rely on the numpy, scipy, sklearn, pandas and matplotlib libraries.

Similar Python Packages

Before the development of the py-ssa-lib I searched for the the Python packages which implement both MSSA and SSA, and found only few decent packages with the similar functionality:

However, they seem to be no longer maintained and they provided a limited functionality in comparison to what I need. (Arguably) the best functionality is provided by the RSSA-package in R (https://github.com/asl/rssa). So the aim of this package is to migrate the most useful functions from the RSSA-package into Python, in order to provide a seamless workflow for the time series analysis.

List of the Core Packages

Literature about SSA and MSSA

Citation

If you find this package useful, please, cite:

Konstantin Ibadullaev, https://github.com/K-Ibadullaev/py_ssa/

(This file and the citation format will change over time.)

Acknowledgements

This package is developed as a part of the research project "Intelligent Geosystems" (100693905) supported by ESF funding

alt text