Back to models
Transformer

IxToX

Create features based on time index or hierarchy values.

Returns index of X in transform as transformed features. By default, time features only. Can also be used to select hierarchy levels in case of hierarchical input, via the levels argument.

Return columns of transform applied to pandas based containers have same name as level if levels have name in transform input, otherwise index (time) and level_{N} where N is the level index integer.

To add instead of replace, use FeatureUnion and/or the + dunder.

Under the default setting of coerce_to_type="auto":

  • date-like indices incl periods are coerced to float (via int64) this typically results in units of periods since start of 1970 (first = 0)

  • object, string, and category indices are coerced to integer (unique category ID) mapping onto integers is per category levels, after pandas category coercion

For more custom options or a direct pandas interface, an alternative is PandasTransformAdaptor with method="reset_index".

Quickstart

python
from sktime.transformations.compose import IxToX

estimator = IxToX(coerce_to_type='auto', level=None, ix_source='X')

Parameters(3)

coerce_to_typestr, or dict, optional, default=”auto”

how to coerce the index columns to when passed to X default=”auto” coerces: date-like indices to float (via int64) object, string, and category indices to integer values other than “auto” are passed to DataFrame.astype in transform

levelNone (default), int, str, or iterable of pandas index level name elements

if passed, selects the hierarchy levels that will be turned into columns in X; if passed, passed on as level to reset_index internally

  • if str or list/tuple of str, selects levels by name. Exceptions from this rule are below.

  • if int or list/tuple of int, selects levels by index (0 is first)

  • if None, will convert only the time index (last level) into features Note that this is different from the default of reset_index.

  • if the str "__all_but_time", selects all levels except the time index (all but last level, level -1).

  • of the str "__all", selects all levels

ix_sourcestr, “X” (default) or “y”, optional

which object to take the index from * “X” = X as passed to transform;

if used within ForecastingPipeline, this means X by default

  • “y” = y as passed to transform, if passed (not None), otherwise X

Examples

>>> from sktime.datasets import load_airline
>>> from sktime.transformations.compose import IxToX
>>> 
>>> X = load_airline ()
>>> t = IxToX ()
>>> Xt = t. fit_transform (X)