The aeon.transformations module contains classes for data 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:





Building blocks for pipelines, wrappers, adapters

Transformer pipeline


Transforms series to tabular data

Length and mean


Transforms individual series to series

Differencing, detrending


transforms a series into a collection of time series

Bootstrap, sliding window


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

Padding to equal length


uses hierarchy information non-trivially



Pipeline building


Pipeline of transformers compositor.

FeatureUnion(transformer_list[, n_jobs, ...])

Concatenates results of multiple transformer objects.

ColumnwiseTransformer(transformer[, columns])

Apply a transformer columnwise to multivariate series.

FitInTransform(transformer[, ...])

Transformer wrapper to delay fit to the transform phase.

MultiplexTransformer(transformers[, ...])

Facilitate an AutoML based selection of the best transformer.

OptionalPassthrough(transformer[, passthrough])

Wrap an existing transformer to tune whether to include it in a pipeline.


Invert a series-to-series transformation.


Identity transformer, returns data unchanged in transform/inverse_transform.


Create exogeneous features which are a copy of the endogenous data.

FunctionTransformer([func, inverse_func, ...])

Constructs a transformer from an arbitrary callable.

Sklearn and pandas adapters


A transformer that turns time series collection into tabular data.

TabularToSeriesAdaptor(transformer[, ...])

Adapt scikit-learn transformation interface to time series setting.

PandasTransformAdaptor(method[, kwargs, ...])

Adapt pandas transformations to aeon interface.

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.


These transformers extract simple summary features.

SummaryTransformer([summary_function, ...])

Calculate summary value of a time series.

WindowSummarizer([lag_feature, n_jobs, ...])

Transformer for extracting time series features.

FittedParamExtractor(forecaster, param_names)

Fitted parameter extractor.

Shapelets, wavelets and convolution


Random Shapelet Transform.


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).

MiniRocketMultivariate([num_kernels, ...])

MINImally RandOm Convolutional KErnel Transform (MiniRocket) multivariate.


MINIROCKET (Multivariate, unequal length).

MultiRocket([num_kernels, ...])

Multi RandOm Convolutional KErnel Transform (MultiRocket).

MultiRocketMultivariate([num_kernels, ...])

Multi RandOm Convolutional KErnel Transform (MultiRocket).


Discrete Wavelet Transform Transformer.

Distance-based features


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

Dictionary-based features


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.


Transformer for extracting time series features via tsfresh.extract_features.


Transformer for extracting time series features via tsfresh.extract_features.

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

Canonical Time-series Characteristics (Catch22).

Series-to-series transformers

Series-to-series transformers transform individual time series into another time series. When applied to collections or hierarchical data, individual series are transformed through broadcasting.


Lag([lags, freq, index_out, ...])

Lagging transformer.

Element-wise transforms

These transformations apply a function element-wise.

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

BoxCoxTransformer(*args, **kwargs)

Box-Cox power transform.

LogTransformer(*args, **kwargs)

Natural logarithm transformation.

ScaledLogitTransformer([lower_bound, ...])

Scaled logit transform or Log transform.

CosineTransformer(*args, **kwargs)

Cosine transformation.

ExponentTransformer([power, offset])

Apply element-wise exponentiation transformation to a time series.

SqrtTransformer(*args, **kwargs)

Apply element-sise square root transformation to a time series.


Detrender([forecaster, model])

Remove a trend from a series.

Deseasonalizer([sp, model])

Remove seasonal components from a time series.


Remove seasonal components from time series, conditional on seasonality test.

STLTransformer([sp, seasonal, trend, ...])

Remove seasonal components from a time-series using STL.

ClearSky([quantile_prob, bw_diurnal, ...])

Clear sky transformer for solar data.

Filtering and denoising

BKFilter(*args, **kwargs)

Filter a times series using the Baxter-King filter.

KalmanFilterTransformer(*args, **kwargs)

Kalman Filter Transformer.

ThetaLinesTransformer(*args, **kwargs)

Decompose the original data into two or more Theta-lines.

Differencing and slope

Differencer(*args, **kwargs)

Apply iterative differences to a timeseries.


Piecewise slope transformation.

Binning and segmentation

TimeBinAggregate(*args, **kwargs)

Bins time series and aggregates by bin.


Time series interpolator/re-sampler.


Interval segmentation transformer.

RandomIntervalSegmenter([n_intervals, ...])

Random interval segmenter transformer.

Missing value imputation

Imputer([method, random_state, value, ...])

Missing value imputation.

Seasonality and Date-Time Features

DateTimeFeatures([ts_freq, feature_scope, ...])

DateTime feature extraction for use in e.g. tree based models.

TimeSince(*args, **kwargs)

Get Element-wise time elapsed between the timeindex and a reference start time.

FourierFeatures(sp_list, fourier_terms_list)

Fourier Features for time series seasonality.

Auto-correlation series

AutoCorrelationTransformer(*args, **kwargs)

Auto-correlation transformer.

PartialAutoCorrelationTransformer(*args, ...)

Partial auto-correlation transformer.

Window-based series transforms

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

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

HOG1D transform.


These transformers convert multivariate series to univariate.


Concatenate multivariate series to a long univariate series.


InvertAugmenter(*args, **kwargs)

Augmenter inverting the time series by multiplying it by -1.

RandomSamplesAugmenter(*args, **kwargs)

Draw random samples from time series.

ReverseAugmenter(*args, **kwargs)

Augmenter reversing the time series.

WhiteNoiseAugmenter(*args, **kwargs)

Augmenter adding Gaussian (i.e. white) noise to the time series.


These transformers select features in X based on y.

FeatureSelection([method, n_columns, ...])

Select exogenous features.

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.

Subsetting time points and variables

These transformers subset X by time points (pandas index or index level) or variables (pandas columns).

ColumnSelect(*args, **kwargs)

Column selection transformer.

IndexSubset(*args, **kwargs)

Index subsetting transformer.

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.


Truncate unequal length time series to a lower bounds.

Dimension reduction

PCATransformer(*args, **kwargs)

Principal Components Analysis applied as transformer.

Series-to-Panel transformers

These transformers create a panel from a single series.

Bootstrap transformations

STLBootstrapTransformer([n_series, sp, ...])

Creates a population of similar time series.

MovingBlockBootstrapTransformer([n_series, ...])

Moving Block Bootstrapping method for synthetic time series generation.

Outlier detection, changepoint detection

HampelFilter([window_length, n_sigma, k, ...])

Use HampelFilter to detect outliers based on a sliding window.

ClaSPTransformer([window_length, ...])

ClaSP (Classification Score Profile) Transformer.

Hierarchical transformers

These transformers are specifically for hierarchical data and panel data.

The transformation depends on the specified hierarchy in a non-trivial way.


Prepare hierarchical data, including aggregate levels, from bottom level.


Hierarchical reconcilation transformer.