文档帮助中心文档
发现数据的突然变化
TF = ischange (A)
TF = ischange(方法)
TF = ischange (___昏暗的)
TF = ischange (___,名称,值)
[TF,S1]=ischange(___)
(TF, S1, S2) = ischange (___)
例子
特遣部队= ischange (一个)返回元素为1的逻辑数组(真正的),当有突然的改变的相应元素的平均值一个.
特遣部队= ischange (一个)
特遣部队
一个
真正的
特遣部队= ischange (一个,方法)指定如何在数据中定义更改点。例如,ischange (A,“方差”)查找元素方差的突然变化一个.
特遣部队= ischange (一个,方法)
方法
ischange (A,“方差”)
特遣部队= ischange (___,昏暗的)指定的维度一个对前面的任何一种语法进行操作。例如,ischange (2)计算矩阵每一行的变换点一个.
特遣部队= ischange (___,昏暗的)
昏暗的
ischange (2)
特遣部队= ischange (___,名称,值)使用一个或多个名称-值对参数指定查找更改点的附加参数。例如,ischange(“MaxNumChanges”,米)检测不超过米变化点。
特遣部队= ischange (___,名称,值)
名称,值
ischange(“MaxNumChanges”,米)
米
[特遣部队,S1) = ischange (___)还返回有关更改点之间的线段的信息。例如,(TF, S1) = ischange (A)返回一个向量S1包含向量变化点之间数据的平均值一个.
[特遣部队,S1) = ischange (___)
S1
(TF, S1) = ischange (A)
[特遣部队,S1,S2) = ischange (___)返回关于更改点之间的线段的附加信息。例如,(TF, S1, S2) = ischange (A)返回一个向量S1它包含每个线段的均值,以及一个向量S2它包含了向量每一段的方差一个.
[特遣部队,S1,S2) = ischange (___)
S2
(TF, S1, S2) = ischange (A)
全部折叠
创建一个噪声数据向量,并计算数据均值的突变。
=[(1、5)的25 * 50的(1、5)* 1(1、5)]+兰德(15);TF = ischange (A)
TF =1连接逻辑阵列0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0
若要计算更改点之间数据的平均值,请指定第二个输出参数。
[TF,S1]=ischange(A);图(A),'*')举行在楼梯(S1)图例(“数据”,”段的意思是,“位置”,“西北”)
创建噪声数据向量,并计算数据斜率和截距的突变。设置较大的检测阈值可减少因噪声而检测到的变化点数量。
A = [0 (1100) 1:10 99:-1:50 50*ones(1250)] + 10*rand(1500);(TF, S1, S2) = ischange (,“线性”,“阈值”, 200);s = S1.*(1:20 0) + S2;情节(1:50 0、1:50 0 segline)传说(“数据”,“线性政权”)
作为提供阈值的替代方法,您还可以指定要检测的最大更改点数量。
(TF, S1, S2) = ischange (,“线性”,“MaxNumChanges”3);
计算矩阵每一行均值的突变。
A = diag(25*ones(5,1)) + rand(5,5)
一个=5×525.8147 0.0975 0.1576 0.1419 0.6557 0.9058 25.2785 0.9706 0.4218 0.0357 0.1270 0.5469 25.9572 0.9157 0.8491 0.9134 0.9575 0.4854 25.7922 0.9340 0.6324 0.9649 0.8003 0.9595 25.6787
TF = ischange (2)
TF =5 x5逻辑阵列0 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 1
输入数据,指定为向量、矩阵、多维数组、表或时间表。
数据类型:单|双重的|表格|时间表
单
双重的
表格
时间表
“的意思是”
“方差”
“线性”
变更检测方法,指定为以下方法之一:
“的意思是”-发现数据均值的突变。
“方差”-发现数据方差的突变。
“线性”-寻找数据的斜率和截距的突变。
操作维数,指定为正整数标量。默认情况下,ischange作用于尺寸不等于1的第一个维度。
ischange
例如,如果一个那么,这是一个矩阵ischange (1)沿着行进行运算一个,计算每列的更改点。
ischange (1)
ischange (2)作用于的列一个,计算每一行的更改点。
数据类型:单|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64
int8
int16
int32
int64
uint8
uint16
uint32
uint64
指定可选的逗号分隔的对名称,值论据。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数名称1,值1,…,名称,值.
的名字
价值
名称1,值1,…,名称,值
TF=ischange(A,'MaxNumChanges',5)
SamplePoints
vartype
样本点,指定为逗号分隔对,由“SamplePoints”当输入数据是表时,可以是样本点值向量或下表中的选项之一。样本点代表x-轴位置的数据,必须被排序并包含唯一的元素。采样点不需要均匀采样。向量[1 2 3 ...]是默认值。
“SamplePoints”
[1 2 3 ...]
当输入数据是一个表时,您可以使用以下选项之一将示例点指定为表变量。
指定单个表变量名的字符向量或标量字符串
“Var1”
标量表变量索引
3.
一种逻辑向量,其每个元素对应一个表变量,其中真正的指定相应的变量作为样本点,所有其他元素都是假
假
(真的假的假的)
以表变量作为输入并返回逻辑标量的函数句柄,该逻辑标量必须为真正的仅用于一个表变量
@数字的
属性生成的表下标vartype函数,只返回一个变量的下标
vartype(数字)
请注意
当输入数据为时,不支持此名称-值对金宝app时间表.时间表总是使用行时间向量作为样本点。要使用不同的样本点,必须编辑时间表,以便行时间包含所需的样本点。
例子:ischange([1 2 3 4 5 6],'linear','SamplePoints',[1 2 3 10 20 30])
ischange([1 2 3 4 5 6],'linear','SamplePoints',[1 2 3 10 20 30])
例子:ischange (T,“线性”,“SamplePoints”,“Var1”)
ischange (T,“线性”,“SamplePoints”,“Var1”)
数据类型:单|双重的|datetime|持续时间
datetime
持续时间
数据变量
要操作的表变量,指定为逗号分隔对,由“DataVariables”这张表中有一个选项。的“DataVariables”值指示要检查输入表中的哪些变量的更改点。与指定变量关联的数据类型必须为双重的或单.表中未指定的其他变量“DataVariables”不操作,因此输出包含假这些变量的值。
“DataVariables”
字符向量或字符串数组的单元格数组,其中每个元素是表变量名
{'Var1''Var2'}
[" Var1”“Var2”)
表变量索引的标量或向量
1
[1 3 5]
一种逻辑向量,其每个元素对应一个表变量,其中真正的包含相应的变量和假排除它
(真的假的真的)
以表变量作为输入并返回逻辑标量的函数句柄
属性生成的表下标vartype函数
例子:ischange (T“DataVariables”[“Var1”“Var2”“Var4”])
ischange (T“DataVariables”[“Var1”“Var2”“Var4”])
阈值
更改点阈值,指定为逗号分隔对,由“阈值”一个非负标量。将阈值增加到大于1会产生更少的更改点。
“阈值”
阈值定义检测到的更改点的数量,并且在“MaxNumChanges”都是确定的。
“MaxNumChanges”
数据类型:双重的|单|int8|int16|int32|int64|uint8|uint16|uint32|uint64
MaxNumChanges
要检测的最大更改点数目,指定为逗号分隔对,由“MaxNumChanges”一个正整数标量。ischange使用自动阈值,计算的值不超过更改点的指定值,因此“阈值”无法指定“MaxNumChanges”都是确定的。
更改点指示符,以向量、矩阵或多维数组的形式返回。特遣部队和我的一样大一个.
数据类型:逻辑
逻辑
变更点之间数据的平均值或斜率,以向量、矩阵、多维数组、表或时间表的形式返回。
如果更改点检测方法为“的意思是”或“方差”,然后S1包含每个部分的平均值。
如果方法是“线性”,然后S1包含每个线段的斜率。
s1具有相同类型的输入数据。
s1
数据类型:双重的|单|表格|时间表
变更点之间的数据的方差或截距,以向量、矩阵、多维数组、表或时间表的形式返回。
如果更改点检测方法为“的意思是”或“方差”,然后S2包含每个部分的方差。
如果方法是“线性”,然后S2包含每个段的截距。
s2具有相同类型的输入数据。
s2
数据向量一个包含一个更改点,如果它可以被分割成两个部分一个1和一个2这样
C ( 一个 1 ) + C ( 一个 2 ) + τ < C ( 一个 ) .
τ 阈值是否由“阈值”参数,C表示成本函数。
例如,检测均值突变的代价函数为 C ( x ) = N 变量 ( x ) ,在那里N是向量中的元素数x.成本函数衡量的是一个区段的近似值。
ischange迭代最小化成本函数的和以确定更改点的数量k以及他们的位置,
C ( 一个 1 ) + C ( 一个 2 ) + ... + C ( 一个 k ) + k τ < C ( 一个 ) .
kilick R. P. Fearnhead和I.A. Eckley。"用线性计算成本对变化点进行最优检测"美国统计协会杂志.第107卷第500期,2012年,第1590-1598页。
使用说明和限制:
对于单精度输入,生成代码的输出可能与MATLAB不匹配®输出。这是因为生成的代码ischange以单精度执行大多数中间计算。
数据变量不能包含重复的变量名。
背景资料
ThreadPool
这个函数完全支持基于线程的环境。金宝app有关更多信息,请参见在线程环境中运行MATLAB函数.
isoutlier|islocalmin|islocalmax|找到变化点
isoutlier
islocalmin
islocalmax
您有这个示例的修改版本。您想打开这个示例与您的编辑吗?
你点击一个链接对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,在那里获得翻译的内容,并看到当地的活动和优惠。根据您的位置,我们建议您选择:.
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
联系当地办事处