Back to models
Transformer

TSFeaturesTransformer

Transformer for extracting time series features via tsfeatures.

Direct interface to tsfeatures.tsfeatures [1] as an sktime transformer. This transformer works with Series with 1 column and a datetime index.

By default, this transformer uses 17 feature functions that extract approximately 34 features (42 for seasonal data with freq > 1). The default feature functions include:

Autocorrelation Features:

  • acf_features: Autocorrelation function features (6-7 features)

  • pacf_features: Partial autocorrelation function features (3-4 features)

Model-based Features:

  • arch_stat: ARCH model test statistic

  • heterogeneity: ARCH/GARCH heterogeneity features (4 features)

  • holt_parameters: Holt exponential smoothing parameters (2 features)

  • hw_parameters: Holt-Winters parameters (3 features, only if freq > 1)

  • stl_features: Seasonal-trend decomposition features (8-11 features)

Statistical Features:

  • crossing_points: Number of median crossings

  • entropy: Spectral entropy

  • flat_spots: Number of flat spots

  • hurst: Hurst exponent

  • lumpiness: Variance of variances across windows

  • nonlinearity: Terasvirta nonlinearity test

  • stability: Variance of means across windows

  • unitroot_kpss: KPSS unit root test statistic

  • unitroot_pp: Phillips-Perron unit root test statistic

Basic Features:

  • series_length: Length of the time series

Other supported features (non-default):

  • count_entropy: Entropy using only positive data.

  • intervals: Mean and Standard Deviation of intervals with positive values.

  • frequency: Wrapper of freq parameter.

  • guerrero: Applies Guerrero’s (1993) method to select the lambda which

minimises the coefficient of variation for subseries of x. - sparsity: Average obs with zero values.

Quickstart

python
from sktime.transformations.tsfeatures import TSFeaturesTransformer

estimator = TSFeaturesTransformer(features=None, scale=True)

Parameters(2)

featureslist of callable, optional
List of feature functions to compute. If None, uses default feature set.
scalebool, optional (default=True)
Whether to (mean-std) scale data before computing features.

Examples

>>> from sktime.transformations.tsfeatures import TSFeaturesTransformer
>>> from sktime.utils._testing.series import _make_series
>>> X = _make_series ()
>>> transformer = TSFeaturesTransformer ()
>>> Xt = transformer. fit_transform (X)
>>> # Example using specific features
>>> from tsfeatures.tsfeatures import acf_features
>>> acf_transformer = TSFeaturesTransformer (
... features = [acf_features ],
... )
>>> acf_Xt = acf_transformer. fit_transform (X)

References