主要内容

查找变化点

在实时编辑器中查找数据中的突然变化

说明

查找变化点任务允许您以交互方式查找数据的均值、方差或斜率和截距的突然变化。该任务会自动为您的实时脚本生成 MATLAB® 代码。

使用此任务,您可以:

  • 指定变化点类型,并在工作区变量中的数据中定位变化点。

  • 调整检测到的变化点数。

  • 可视化变化点位置及位置间的数据段。

相关函数

查找变化点生成使用 ischange 函数的代码。

Find Change Points task in the Live Editor

打开任务

要在 MATLAB 编辑器中将查找变化点任务添加到实时脚本中,请执行以下操作:

  • 实时编辑器选项卡中,选择任务 > 查找变化点

  • 在脚本的代码块中,键入相关关键字,例如 changefindvariancelinear。从所建议的命令自动填充中选择查找变化点。对于某些关键字,任务会自动更新一个或多个对应的参数。

示例

全部展开

使用实时编辑器中的“查找变化点”任务以交互方式查找数据斜率和截距的突然变化。

创建一个含噪数据向量。创建一个绘图来可视化数据。

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

Figure contains an axes object. The axes object contains an object of type line.

在实时编辑器中打开“查找变化点”任务。要查找向量斜率和截距的突然变化,请选择 data 作为输入数据。

在任务的指定参数部分的变化类型字段中,将更改检测方法指定为 Linear。要减少因噪声而检测到的变化点数,请将变化点阈值增大到 100。您也可以指定要检测的最大变化点数。

要更清楚地查看变化点之间的线段,请清除显示结果部分中的输入数据字段,从图中删除输入数据。

Live Task

Figure contains an axes object. The axes object with title Number of change points: 3 contains 2 objects of type line. These objects represent Linear regime, Change points.

相关示例

参数

全部展开

此任务对包含在向量、表或时间表中的输入数据进行操作。数据的类型可以是 singledouble

对于表或时间表输入数据,要清洗类型为 singledouble 的所有变量,请选择所有支持变量。要选择要清洗的 singledouble 变量,请选择指定的变量

将检测输入数据中变化的方法指定为以下选项之一。

方法

描述

mean

计算数据均值的突然变化。

variance

计算数据方差的突然变化。

linear

计算数据的斜率和截距的突然变化。

版本历史记录

在 R2019b 中推出

全部展开