Exponential Smoothing Traces#
The exponential smoothing trace collection is used to store the resulting
signal traces produced by the second-order
exponential smoothing of the signal
samples
of a signal trace.
Create the Trace Collection#
You can create an exponential smoothing trace collection without
samples
by calling the ExponentialSmoothingTraces
class.
>>> # create an empty exponential smoothing trace collection
>>> traces = ExponentialSmoothingTraces()
>>> traces
ExponentialSmoothingTraces(forecast=Trace(label='Trace', samples=[]),
forecast_sign=Trace(label='Trace', samples=[]),
level=Trace(label='Trace', samples=[]),
level_sign=Trace(label='Trace', samples=[]),
prognosis1=Trace(label='Trace', samples=[]),
prognosis2=Trace(label='Trace', samples=[]),
prognosis=Trace(label='Trace', samples=[]),
smoothed1=Trace(label='Trace', samples=[]),
smoothed2=Trace(label='Trace', samples=[]),
trend=Trace(label='Trace', samples=[]),
trend_sign=Trace(label='Trace', samples=[]),
trend_inflection=Trace(label='Trace', samples=[]),
error=Trace(label='Trace', samples=[]),
correction=Trace(label='Trace', samples=[]),
absolute_error=Trace(label='Trace', samples=[]),
variance=Trace(label='Trace', samples=[]),
deviation=Trace(label='Trace', samples=[]),
skew=Trace(label='Trace', samples=[]),
kurtosis=Trace(label='Trace', samples=[]))
Number of Traces#
You can get the number of the traces in the ExponentialSmoothingTraces
collection with the built-in function len()
.
>>> # number of traces in the collection
>>> len(traces)
19
Names of the Traces#
You can get the list
with the names of the traces in the
ExponentialSmoothingTraces
collection.
A list
with the key names of the traces is returned.
>>> # key names of the traces in the collection
>>> list(traces)
['forecast',
'forecast_sign',
'level',
'level_sign',
'prognosis1',
'prognosis2',
'prognosis',
'smoothed1',
'smoothed2',
'trend',
'trend_sign',
'trend_inflection',
'error',
'correction',
'absolute_error',
'variance',
'deviation',
'skew',
'kurtosis']
>>> # key names of the traces in the collection
>>> list(traces.keys())
['forecast',
'forecast_sign',
'level',
'level_sign',
'prognosis1',
'prognosis2',
'prognosis',
'smoothed1',
'smoothed2',
'trend',
'trend_sign',
'trend_inflection',
'error',
'correction',
'absolute_error',
'variance',
'deviation',
'skew',
'kurtosis']
Forecast Trace#
You can get the forecast Trace
with the
forecast
attribute from the
ExponentialSmoothingTraces
collection.
The Trace
with the forecast samples
is returned.
>>> # forecast trace by attribute
>>> traces.forecast
Trace(label='Trace', samples=[])
>>> # forecast trace by key
>>> traces['forecast']
Trace(label='Trace', samples=[])
Forecast Sign Trace#
You can get the forecast sign Trace
with the
forecast_sign
attribute from the
ExponentialSmoothingTraces
collection.
The Trace
with the forecast sign samples
is returned.
>>> # forecast sign trace by attribute
>>> traces.forecast_sign
Trace(label='Trace', samples=[])
>>> # forecast trace by key
>>> traces['forecast_sign']
Trace(label='Trace', samples=[])
Level Trace#
You can get the level Trace
with the
level
attribute from the
ExponentialSmoothingTraces
collection.
The Trace
with the level samples
is returned.
>>> # level trace by attribute
>>> traces.level
Trace(label='Trace', samples=[])
>>> # level trace by key
>>> traces['level']
Trace(label='Trace', samples=[])
Level Sign Trace#
You can get the level sign Trace
with the
level_sign
attribute from the
ExponentialSmoothingTraces
collection.
The Trace
with the level samples
is returned.
>>> # level sign trace by attribute
>>> traces.level_sign
Trace(label='Trace', samples=[])
>>> # level sign trace by key
>>> traces['level_sign']
Trace(label='Trace', samples=[])
1st-order Prognosis Trace#
You can get the 1st-order prognosis Trace
with the
prognosis1
attribute from the
ExponentialSmoothingTraces
collection.
The Trace
with the 1st-order prognosis samples
is returned.
>>> # 1st-order prognosis trace by attribute
>>> traces.prognosis1
Trace(label='Trace', samples=[])
>>> # 1st-order prognosis trace by key
>>> traces['prognosis1']
Trace(label='Trace', samples=[])
2nd-order Prognosis Trace#
You can get the 2nd-order prognosis Trace
with the
prognosis2
attribute from the
ExponentialSmoothingTraces
collection.
The Trace
with the 2nd-order prognosis samples
is returned.
>>> # 2nd-order prognosis trace by attribute
>>> traces.prognosis2
Trace(label='Trace', samples=[])
>>> # 2nd-order prognosis trace by key
>>> traces['prognosis2']
Trace(label='Trace', samples=[])
1st-order Smoothed Trace#
You can get the 1st-order smoothed Trace
with the
smoothed1
attribute from the
ExponentialSmoothingTraces
collection.
The Trace
with the 1st-order smoothed samples
is returned.
>>> # 1st-order smoothed trace by attribute
>>> traces.smoothed1
Trace(label='Trace', samples=[])
>>> # 1st-order smoothed trace by key
>>> traces['smoothed1']
Trace(label='Trace', samples=[])
2nd-order Smoothed Trace#
You can get the 2nd-order smoothed Trace
with the
smoothed2
attribute from the
ExponentialSmoothingTraces
collection.
The Trace
with the 2nd-order prognosis samples
is returned.
>>> # 2nd-order smoothed trace by attribute
>>> traces.smoothed2
Trace(label='Trace', samples=[])
>>> # 2nd-order smoothed trace by key
>>> traces['smoothed2']
Trace(label='Trace', samples=[])
Trend Trace#
You can get the trend Trace
with the
trend
attribute from the
ExponentialSmoothingTraces
collection.
The Trace
with the trend samples
is returned.
>>> # trend trace by attribute
>>> traces.trend
Trace(label='Trace', samples=[])
>>> # trend trace by key
>>> traces['trend']
Trace(label='Trace', samples=[])
Trend Sign Trace#
You can get the trend sign Trace
with the
trend_sign
attribute from the
ExponentialSmoothingTraces
collection.
The Trace
with the trend sign samples
is returned.
>>> # trend sign trace by attribute
>>> traces.trend_sign
Trace(label='Trace', samples=[])
>>> # trend sign trace by key
>>> traces['trend_sign']
Trace(label='Trace', samples=[])
Absolute Error Trace#
You can get the absolute error Trace
with the
absolute_error
attribute from the
ExponentialSmoothingTraces
collection.
The Trace
with the absolute error samples
is returned.
>>> # absolute error trace by attribute
>>> traces.absolute_error
Trace(label='Trace', samples=[])
>>> # absolute error trace by key
>>> traces['absolute_error']
Trace(label='Trace', samples=[])
Variance Trace#
You can get the variance Trace
with the
variance
attribute from the
ExponentialSmoothingTraces
collection.
The Trace
with the variance samples
is returned.
>>> # variance trace by attribute
>>> traces.variance
Trace(label='Trace', samples=[])
>>> # variance trace by key
>>> traces['variance']
Trace(label='Trace', samples=[])
Standard Deviation Trace#
You can get the standard deviation Trace
with the
deviation
attribute from the
ExponentialSmoothingTraces
collection.
The Trace
with the standard deviation samples
is returned.
>>> # standard deviation trace by attribute
>>> traces.deviation
Trace(label='Trace', samples=[])
>>> # standard deviation trace by key
>>> traces['deviation']
Trace(label='Trace', samples=[])
Skew Trace#
You can get the skew Trace
with the
skew
attribute from the
ExponentialSmoothingTraces
collection.
The Trace
with the skew samples
is returned.
>>> # biased skew trace by attribute
>>> traces.skew
Trace(label='Trace', samples=[])
>>> # biased skew trace by key
>>> traces['skew']
Trace(label='Trace', samples=[])
Kurtosis Trace#
You can get the kurtosis Trace
with the
kurtosis
attribute from the
ExponentialSmoothingTraces
collection.
The Trace
with the kurtosis samples
is returned.
>>> # biased kurtosis trace by attribute
>>> traces.kurtosis
Trace(label='Trace', samples=[])
>>> # biased kurtosis trace by key
>>> traces['kurtosis']
Trace(label='Trace', samples=[])