Nixtla/tsfeatures

Calculates various features from time series data. Python implementation of the R package tsfeatures.

What it solves

It provides a standardized way to extract summary statistics and characteristics (features) from time series data, which is essential for analyzing the behavior of multiple time series and for meta-learning in forecasting models.

How it works

The library implements a Python version of the R tsfeatures package. It processes pandas DataFrames containing time series (with unique_id, ds, and y columns) and calculates a wide array of features such as entropy, stability, lumpiness, and autocorrelation. It can automatically infer the data frequency or use a custom frequency dictionary.

Who it’s for

Data scientists and analysts working with time series forecasting and analysis who need to characterize their data quantitatively.

Highlights

  • Comprehensive Feature Set: Includes a vast range of features like acf_features, arch_stat, entropy, and unitroot_kpss.
  • Extensible: Users can define their own custom feature functions to be calculated alongside built-in ones.
  • R Integration: Ability to call the original R implementation of tsfeatures directly from Python via rpy2.
  • M4 Methodology: By default, it calculates features used in the FFORMA model for the M4 competition methodology.

Related

  • Project
  • Project
  • Project
  • Project
  • Project