変化点の検出
説明
[変化点の検出] タスクを使うと、データの平均値、分散、または勾配と切片の急激な変化を対話形式で検出できます。このタスクは、ライブ スクリプト用の MATLAB® コードを自動生成します。
このタスクを使用すると、次を行うことができます。
変化点のタイプを指定して、ワークスペース変数内のデータの変化点を見つける。
検出される変化点の数を調整する。
変化点の場所およびそれらの間のデータ セグメントを可視化する。
その他
関連する関数
[変化点の検出] では、関数 ischange
を使用するコードが生成されます。
![](changeptslet.png)
タスクを開く
[変化点の検出] タスクを MATLAB エディターでライブ スクリプトに追加するには、次を行います。
[ライブ エディター] タブで [タスク] 、 [変化点の検出] を選択します。
スクリプトのコード ブロック内に、
change
、find
、variance
、linear
などの関連キーワードを入力します。コマンドの補完候補から[変化点の検出]
を選択します。キーワードによっては、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 に増やします。あるいは、検出する変化点の最大数を指定できます。
変化点間のセグメントをより明確に表示するには、[結果の表示] セクションで [入力データ] フィールドをオフにして、プロットから入力データを削除します。
関連する例
パラメーター
入力データ
— ワークスペースからの有効な入力データ
ベクトル | table | timetable
このタスクは、ベクトル、table、または timetable に含まれる入力データに対して実行されます。データは single
型または double
型にできます。
入力データが table または timetable の場合、single
型または double
型の変数をすべて削除するには、[サポートされているすべての変数]
を選択します。single
または double
の変数のうち、削除する対象を選択するには、[指定された変数]
を選択します。
変化のタイプ
— 変化検出メソッド
mean
| variance
| linear
入力データの変化を検出するメソッドを次のオプションのいずれかとして指定します。
メソッド | 説明 |
---|---|
| データの平均値の急激な変化を検出。 |
| データの分散の急激な変化を検出。 |
| データの勾配と切片の急激な変化を検出。 |
バージョン履歴
R2019b で導入R2022b: 複数の table 変数のプロット
このライブ エディター タスクの表示で、複数の table 変数を同時にプロットします。データが table または timetable の場合、選択したすべての table 変数をタイル表示チャート レイアウトで一度に可視化するには、[表示する変数] フィールドを設定します。
R2022b: 表形式の出力の指定
変化点がチェックされた table 変数に対応する logical 変数を使用して table または timetable を出力するか、logical 変数を入力 table に追加します。入力データが table または timetable の場合、表形式を指定するには、[出力形式] フィールドを設定します。
R2022a: 入力に 100 万個を超える要素がある場合、ライブ エディター タスクは自動実行されない
入力に 100 万個を超える要素がある場合、このライブ エディター タスクは自動実行されません。以前のリリースでは、入力がどのようなサイズでもタスクは必ず自動実行されていました。入力の要素が多い場合、このタスクで生成されたコードは実行にかなりの時間 (数秒間以上) を要することがあります。
タスクが自動的に実行されない場合、自動実行インジケーターが無効になります。必要に応じてタスクを手動で実行するか、タスクの自動実行の有効化を選択することができます。
R2021a: 複数の table 変数の操作
このライブ エディター タスクは、複数の table 変数を同時に操作できます。入力データが table または timetable の場合、複数の変数を操作するには、[サポートされているすべての変数]
または [指定された変数]
を選択します。すべての変数、または変更した変数のみを返し、可視化する変数を指定します。
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)