Transformer
SavitzkyGolayTransformer
Savitzky-Golay filter for smoothing or differentiating time series.
Uses local polynomial regression (convolution) to smooth data or to compute numerical derivatives, preserving features of the distribution like relative maxima and minima better than moving average approaches.
Wraps scipy.signal.savgol_filter.
Schnellstart
python
from sktime.transformations.savitzky_golay import SavitzkyGolayTransformer
estimator = SavitzkyGolayTransformer(window_length=5, polyorder=2, deriv=0, delta=1.0, mode='interp', cval=0.0)Tags
Fähigkeiten
- Multivariat
- Reihen ungleicher Länge
- Inverse Transformation: Nicht unterstützt
- Fehlende Werte: Nicht unterstützt
- Entfernt fehlende Werte: Nicht unterstützt
- Gleicht Reihenlängen an: Nicht unterstützt
Eigenschaften
- Eingabetypscitype:transform-input
- Series
- Ausgabetypscitype:transform-output
- Series
- Label-Typscitype:transform-labels
- None
- Fit ist leerfit_is_empty
- Ja
- Behält den Zeitindextransform-returns-same-time-index
- Ja
- Benötigt Xrequires_X
- Ja
- Benötigt yrequires_y
- Nein
- X und y brauchen denselben IndexX-y-must-have-same-index
- Nein
Parameter(6)
- window_lengthint, default=5
- Length of the filter window. Must be a positive odd integer.
- polyorderint, default=2
Order of the polynomial used to fit the samples. Must be less than
window_length.- derivint, default=0
- Order of the derivative to compute. Use 0 to simply smooth the data without differentiation.
- deltafloat, default=1.0
Spacing of the samples to which the filter will be applied. Only relevant when
deriv > 0.- modestr, default=”interp”
How to extend the signal at the boundaries. One of
"interp","mirror","nearest","wrap","constant".- cvalfloat, default=0.0
Value to fill past the edges of the input when
modeis"constant".
Beispiele
>>> from sktime.transformations.savitzky_golay import (
... SavitzkyGolayTransformer,
... )
>>> from sktime.datasets import load_airline
>>> y = load_airline ()
>>> t = SavitzkyGolayTransformer (window_length = 7, polyorder = 2)
>>> y_smooth = t. fit_transform (y)