Time-series analysis packages (Python)
There are several Python packages for time series analysis. The list below is not exhaustive, and the packages are not mutually exclusive.
Feature extraction:
- tsfresh - Feature extraction from time series, 1200 features (usage examples)
- tsfel - Feature extraction from time series
- catch22 - Feature extraction from time series (22 the most informative features for general time series classification)
- hctsa - Highly Comparative Time-Series Analysis (HCTSA) feature extraction package (Matlab, 7000+ features)
- tsfeatures - Time series feature extraction (Python implementation of the R package). Additional documentation is available from the original R package
Time series classification and forecasting:
- sktime - Python framework for ML and AI with time series
- aeon -
scikit-learn
compatible toolkit for time series tasks such as classification, clustering, segmentation and anomaly detection (fork ofsktime
) - tslearn - Machine learning tools for the analysis of time series
- tsai - A state-of-the-art deep learning library for time series and sequential data
- scale-cast - A Python package for time series forecast
- ml-forecast - Scalable machine learning for time series forecasting
- prophet - A forecasting procedure implemented in R and Python (Facebook)
- MrSQM - Multiple Representations Sequence Miner is a time series classifier
- Nixtlaverse - Set of Python tools for time series forecasting: StatsForecast, MLForecast, NeuralForecast and more
- darts - A Python library for forecasting and anomaly detection of time series
- Kats - A time series analysis toolkit developed by Facebook
- Merlion - A time series forecasting library developed by Salesforce
- greykite - A Python library for forecasting time series data by LinkedIn
- arch - Autoregressive Conditional Heteroskedasticity (ARCH) and other tools for financial econometrics
- PyPOTS - a Python toolbox for machine learning on Partially-Observed Time Series
System-based approach:
- sysidentpy - A Python package for system identification in time series analysis
- GEKKO - A Python package for optimization of dynamic systems, with time-series capabilities, e.g. ARX
Deep learning:
- TF-1D-2D - TensorFlow 1D and 2D models
- Time-Series-Library - A PyTorch-based library for time series analysis
- pytorch-forecasting - Time series forecasting with PyTorch
Datasets:
Depreciated (not maintained):
- pyts - A Python Package for Time Series Classification
- seglearn - A Python package for time series classification
- gluonts - Probabilistic deep learning time series modeling in Python (Amazon)
- EdgeML - A machine learning library for resource-constrained devices developed by Microsoft (India)
Feature selection packages
- FeatureWiz - Minimum Redundancy Maximum Relevance (MRMR) algorithm
- AutoFeatSelect - Various feature selection methods
- BorutaPy - Tree-based feature selection
- scikit-learn Scikit-learn feature selection methods: statistical, greed search, recursive feature elimination, etc.
- Py_FS - Evolutionary feature selection
- shap-hypetune - Hyperparameters Tuning and Features Selection for Gradient Boosting Models
Unmaintained:
- XuniVerse - Collection of transformers for feature engineering and feature selection
Feature engineering packages
- Featuretools or link - Automated feature engineering
- Feature-engine - feature engineering alternative to Scikit-learn
List of time series packages
Enjoy Reading This Article?
Here are some more articles you might like to read next: