STLTransformer
STLTransformer
- class STLTransformer(sp=2, seasonal=7, trend=None, low_pass=None, seasonal_deg=1, trend_deg=1, low_pass_deg=1, robust=False, seasonal_jump=1, trend_jump=1, low_pass_jump=1, return_components=False)[source]
Remove seasonal components from a time-series using STL.
Interfaces
statsmodels.tsa.seasonal.STLas an sktime transformer.STLTransformercan be used to perform deseasonalization or decomposition:If
return_components=False, it will return the deseasonalized series, i.e., the trend component fromstatsmodelsSTL.If
return_components=True, it will transform the series into a decomposition of component, returning the trend, seasonal, and residual components.STLTransformerperformsinverse_transformby summing any components, and can be used for pipelining in aTransformedTargetForecaster.Important: for separate forecasts of trend and seasonality, and an inverse transform that respects seasonality, ensure that
return_components=Trueis set, otherwise the inverse will just return the trend component.An alternative for pipeline-style composition is
STLForecaster.- Parameters:
- spint, default=1
Seasonal periodicity.
- seasonalint, default=7
Length of the seasonal smoother. Must be an odd integer, and should normally be >= 7 (default).
- trend{int, default=None}
Length of the trend smoother. Must be an odd integer. If not provided uses the smallest odd integer greater than 1.5 * period / (1 - 1.5 / seasonal), following the suggestion in the original implementation.
- low_pass{int, default=None}
Length of the low-pass filter. Must be an odd integer >=3. If not provided, uses the smallest odd integer > period.
- seasonal_degint, default=1
Degree of seasonal LOESS. 0 (constant) or 1 (constant and trend).
- trend_degint, default=1
Degree of trend LOESS. 0 (constant) or 1 (constant and trend).
- low_pass_degint, default=1
Degree of low pass LOESS. 0 (constant) or 1 (constant and trend).
- robustbool, default False
Flag indicating whether to use a weighted version that is robust to some forms of outliers.
- seasonal_jumpint, default=1
Positive integer determining the linear interpolation step. If larger than 1, the LOESS is used every seasonal_jump points and linear interpolation is between fitted points. Higher values reduce estimation time.
- trend_jumpint, default=1
Positive integer determining the linear interpolation step. If larger than 1, the LOESS is used every trend_jump points and values between the two are linearly interpolated. Higher values reduce estimation time.
- low_pass_jumpint, default=1
Positive integer determining the linear interpolation step. If larger than 1, the LOESS is used every low_pass_jump points and values between the two are linearly interpolated. Higher values reduce estimation time.
- return_componentsbool, default=False
if False, will return only the trend component if True, will return the transformed series, as well as three components
as variables in the returned multivariate series (DataFrame cols) “transformed” - the transformed series “seasonal” - the seasonal component “trend” - the trend component “resid” - the residuals after de-trending, de-seasonalizing
- Attributes:
- trend_pd.Series
Trend component of series seen in fit.
- seasonal_pd.Series
Seasonal components of series seen in fit.
- resid_pd.Series
Residuals component of series seen in fit.
See also
DetrenderDeseasonalizerSTLForecaster
References
Examples
>>> from sktime.datasets import load_airline >>> from sktime.transformations.detrend import STLTransformer >>> X = load_airline() >>> transformer = STLTransformer(sp=12) >>> Xt = transformer.fit_transform(X)
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()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.

