binder

PlateauFinder 转换器演示#

PlateauFinder 的作用是什么?

  • 它搜索给定最小长度、具有恒定给定值的时间序列段(即平台),并返回它们的起始点(在时间序列索引上)和长度,

  • 要搜索的值也可以设置为 np.nannp.inf 以查找缺失值,

  • 也可以指定要考虑的最小段长度;如果设置为 1,则返回给定值的所有位置作为起始点。

[1]:
import numpy as np
import pandas as pd

from sktime.transformations.panel.summarize import PlateauFinder
[2]:
# generate toy data
X = pd.DataFrame(
    pd.Series(
        [
            pd.Series([np.nan, np.nan, 3, 3, np.nan, 2, 2, 3]),
            pd.Series([0, np.nan, np.nan, np.nan, np.nan, np.nan, 2, np.nan]),
            pd.Series([2, np.nan, np.nan, np.nan, 2, np.nan, 3, 1]),
            pd.Series([1, np.nan, np.nan, 3, np.nan, np.nan, 2, 0]),
        ]
    )
)
X.head()
[2]:
0
0 0 NaN 1 NaN 2 3.0 3 3.0 4 NaN 5...
1 0 0.0 1 NaN 2 NaN 3 NaN 4 NaN 5...
2 0 2.0 1 NaN 2 NaN 3 NaN 4 2.0 5...
3 0 1.0 1 NaN 2 NaN 3 3.0 4 NaN 5...
[3]:
#  find plateaus
t = PlateauFinder()
Xt = t.fit_transform(X)
Xt
[3]:
0_nan_starts 0_nan_lengths
0 [0] [2]
1 [1] [5]
2 [1] [3]
3 [1, 4] [2, 2]

使用 nbsphinx 生成。Jupyter notebook 可以在这里找到。