Skip to content

ConditionalDeseasonalizer

ConditionalDeseasonalizer

class ConditionalDeseasonalizer(seasonality_test=None, sp=1, model='additive')[source]

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

Fit tests for seasonality and if the passed time series has a seasonal component it applies seasonal decomposition provided by statsmodels <https://www.statsmodels.org> to compute the seasonal component. If the test is negative _seasonal is set to all ones (if model is “multiplicative”) or to all zeros (if model is “additive”).

Transform aligns seasonal components stored in seasonal_ with the time index of the passed series and then subtracts them (“additive” model) from the passed series or divides the passed series by them (“multiplicative” model).

Parameters:
seasonality_testcallable or None, default=None

Callable that tests for seasonality and returns True when data is seasonal and False otherwise. If None, 90% autocorrelation seasonality test is used.

spint, default=1

Seasonal periodicity.

model{“additive”, “multiplicative”}, default=”additive”

Model to use for estimating seasonal component.

Attributes:
seasonal_array of length sp

Seasonal components.

is_seasonal_bool

Return value of seasonality_test. True when data is seasonal and False otherwise.

See also

Deseasonalizer

Notes

For further explanation on seasonal components and additive vs. multiplicative models see Forecasting: Principles and Practice. Seasonal decomposition is computed using `statsmodels

<https://www.statsmodels.org/stable/generated/statsmodels.tsa.seasonal.seasonal_decompose.html>`_.

Examples

>>> from sktime.transformations.detrend import ConditionalDeseasonalizer
>>> from sktime.datasets import load_airline
>>> y = load_airline()
>>> transformer = ConditionalDeseasonalizer(sp=12)
>>> y_hat = transformer.fit_transform(y)

Methods

check_is_fitted([method_name])

Check if the estimator has been fitted.

clone()

Obtain a clone of the object with same hyper-parameters and config.

clone_tags(estimator[, tag_names])

Clone tags from another object as dynamic override.

create_test_instance([parameter_set])

Construct an instance of the class, using first test parameter set.

create_test_instances_and_names([parameter_set])

Create list of all test instances and a list of names for them.

fit(X[, y])

Fit transformer to X, optionally to y.

fit_transform(X[, y])

Fit to data, then transform it.

get_class_tag(tag_name[, tag_value_default])

Get class tag value from class, with tag level inheritance from parents.

get_class_tags()

Get class tags from class, with tag level inheritance from parent classes.

get_config()

Get config flags for self.

get_fitted_params([deep])

Get fitted parameters.

get_param_defaults()

Get object's parameter defaults.

get_param_names([sort])

Get object's parameter names.

get_params([deep])

Get a dict of parameters values for this object.

get_tag(tag_name[, tag_value_default, ...])

Get tag value from instance, with tag level inheritance and overrides.

get_tags()

Get tags from instance, with tag level inheritance and overrides.

get_test_params([parameter_set])

Return testing parameter settings for the estimator.

inverse_transform(X[, y])

Inverse transform X and return an inverse transformed version.

is_composite()

Check if the object is composed of other BaseObjects.

load_from_path(serial)

Load object from file location.

load_from_serial(serial)

Load object from serialized memory container.

reset()

Reset the object to a clean post-init state.

save([path, serialization_format])

Save serialized self to bytes-like object or to (.zip) file.

set_config(**config_dict)

Set config flags to given values.

set_params(**params)

Set the parameters of this object.

set_random_state([random_state, deep, ...])

Set random_state pseudo-random seed parameters for self.

set_tags(**tag_dict)

Set instance level tag overrides to given values.

transform(X[, y])

Transform X and return a transformed version.

update(X[, y, update_params])

Update transformer with X, optionally y.