Main Content

変化点の検出

ライブ エディターでデータ内の急激な変化を検出

R2019b 以降

説明

[変化点の検出] タスクを使うと、データの平均値、分散、または勾配と切片の急激な変化を対話形式で検出できます。このタスクは、ライブ スクリプト用の MATLAB® コードを自動生成します。

このタスクを使用すると、次を行うことができます。

  • 変化点のタイプを指定して、ワークスペース変数内のデータの変化点を見つける。

  • 検出される変化点の数を調整する。

  • 変化点の場所およびそれらの間のデータ セグメントを可視化する。

関連する関数

[変化点の検出] では、関数 ischange を使用するコードが生成されます。

Find Change Points task in the Live Editor

タスクを開く

[変化点の検出] タスクを MATLAB エディターでライブ スクリプトに追加するには、次を行います。

  • [ライブ エディター] タブで [タスク][変化点の検出] を選択します。

  • スクリプトのコード ブロック内に、changefindvariancelinear などの関連キーワードを入力します。コマンドの補完候補から [変化点の検出] を選択します。キーワードによっては、1 つ以上の対応するパラメーターがタスクで自動的に更新されます。

すべて展開する

ライブ エディターの [変化点の検出] タスクを使用して、データの勾配と切片の急激な変化を対話的に検出します。

ノイズを含むデータのベクトルを作成します。プロットを作成してデータを可視化します。

data = [zeros(1,100) 1:100 99:-1:50  50*ones(1,250)] + 10*rand(1,500);
plot(1:500,data)

ライブ エディターで [変化点の検出] タスクを開きます。ベクトルの勾配と切片の急激な変化を検出するには、data を入力データとして選択します。

タスクの [パラメーターの指定] セクションの [変化のタイプ] フィールドで、変化検出メソッドを Linear に指定します。ノイズが原因で検出される変化点の数を減らすには、変化点のしきい値を 100 に増やします。あるいは、検出する変化点の最大数を指定できます。

変化点間のセグメントをより明確に表示するには、[結果の表示] セクションで [入力データ] フィールドをオフにして、プロットから入力データを削除します。

Live Task

関連する例

パラメーター

すべて展開する

このタスクは、ベクトル、table、または timetable に含まれる入力データに対して実行されます。データは single 型または double 型にできます。

入力データが table または timetable の場合、single 型または double 型の変数をすべて削除するには、[サポートされているすべての変数] を選択します。single または double の変数のうち、削除する対象を選択するには、[指定された変数] を選択します。

入力データの変化を検出するメソッドを次のオプションのいずれかとして指定します。

メソッド

説明

mean

データの平均値の急激な変化を検出。

variance

データの分散の急激な変化を検出。

linear

データの勾配と切片の急激な変化を検出。

バージョン履歴

R2019b で導入

すべて展開する