Transformations

The aeon.transformations module contains classes for data transformations.

Transformations.

All (simple) transformers in aeon can be listed using the aeon.registry .all_estimators utility, using estimator_types=”transformer” tag.

Transformations are categorized as follows:

Category

Explanation

Example

Composition

Building blocks for pipelines, wrappers, adapters

Transformer pipeline

Series-to-tabular

Transforms series to tabular data

Length and mean

series-to-series

Transforms individual series to series

Differencing, detrending

Series-to-collection

transforms a series into a collection of time series

Bootstrap, sliding window

Collection

Transforms a collection of times series into a new collection of time series

Padding to equal length

Hierarchical

uses hierarchy information non-trivially

Reconciliation

Composition

Sklearn and pandas adapters

Tabularizer()

A transformer that turns time series collection into tabular data.

Series-to-tabular transformers

Series-to-tabular transformers transform individual time series to a vector of features, usually a vector of floats, but can also be categorical.

When applied to collections or hierarchical data, the transformation result is a table with as many rows as time series in the collection and a column for each feature.

Shapelets, wavelets and convolution

RandomShapeletTransform([...])

Random Shapelet Transform.

RandomDilatedShapeletTransform([...])

Random Dilated Shapelet Transform (RDST) as described in [R1a26faa97573-1], [R1a26faa97573-2].

SAST([lengths, stride, nb_inst_per_class, ...])

Scalable and Accurate Subsequence Transform (SAST).

Rocket([num_kernels, normalise, n_jobs, ...])

RandOm Convolutional KErnel Transform (ROCKET).

MiniRocket([num_kernels, ...])

MINImally RandOm Convolutional KErnel Transform (MiniRocket).

MiniRocketMultivariateVariable([...])

MINIROCKET (Multivariate, unequal length).

MultiRocket([num_kernels, ...])

Multi RandOm Convolutional KErnel Transform (MultiRocket).

DWTTransformer([n_levels])

Discrete Wavelet Transform Transformer.

Distance-based features

MatrixProfile([m])

Return the matrix profile and index profile for each time series of a dataset.

Dictionary-based features

PAA([n_segments])

Piecewise Aggregate Approximation Transformer (PAA).

SFA([word_length, alphabet_size, ...])

Symbolic Fourier Approximation (SFA) Transformer.

SAX([n_segments, alphabet_size, ...])

Symbolic Aggregate approXimation (SAX) transformer.

Signature-based features

SignatureTransformer([augmentation_list, ...])

Transformation class from the signature method.

Feature collections

These transformers extract larger collections of features.

TSFreshRelevantFeatureExtractor([...])

Transformer for extracting time series features via tsfresh.extract_features.

TSFreshFeatureExtractor([...])

Transformer for extracting time series features via tsfresh.extract_features.

Catch22([features, catch24, outlier_norm, ...])

Canonical Time-series Characteristics (Catch22).

Series transforms

These transformations apply a function element-wise.

Depending on the transformer, the transformation parameters can be fitted.

BoxCoxTransformer([bounds, method, sp])

Box-Cox power transform.

LogTransformer([offset, scale])

Natural logarithm transformation.

Detrending

Filtering and denoising

BKFilter([low, high, K])

Filter a times series using the Baxter-King filter.

DFTSeriesTransformer([r, sort])

Filter a times series using Discrete Fourier Approximation (DFT).

Slope

SlopeTransformer([n_intervals])

Piecewise slope transformation.

Segmentation

TSInterpolator(length)

Time series interpolator/re-sampler.

IntervalSegmenter([intervals])

Interval segmentation transformer.

RandomIntervalSegmenter([n_intervals, ...])

Random interval segmenter transformer.

SlidingWindowSegmenter([window_length])

Sliding window segmenter transformer.

Window-based series transforms

These transformers create a series based on a sequence of sliding windows.

HOG1DTransformer([n_intervals, n_bins, ...])

HOG1D transform.

ChannelScorer([classifier, proportion])

Channel scorer performs channel selection using a single channel classifier.

ElbowClassSum([distance, prototype_type, ...])

Elbow Class Sum (ECS) transformer to select a subset of channels/variables.

ElbowClassPairwise([distance, ...])

Elbow Class Pairwise (ECP) transformer to select a subset of channels.

RandomChannelSelector([p, random_state])

Selects a random proportion of channels.

Panel transformers

Panel transformers transform a panel of time series into a panel of time series.

A panel transformer is fitted on an entire panel, and not per series.

Equal length transforms

These transformations ensure all series in a panel have equal length

PaddingTransformer([pad_length, fill_value])

Pad unequal length time series to equal, fixed length.

TruncationTransformer([truncated_length])

Truncate unequal length time series to a lower bounds.

Dimension reduction

Series-to-Panel transformers

These transformers create a panel from a single series.

Outlier detection, changepoint detection

ClaSPTransformer([window_length, ...])

ClaSP (Classification Score Profile) Transformer.