isoutlier
发现数据中的异常值
语法
描述
返回一个逻辑数组的元素特遣部队
= isoutlier (一个
)真正的
当一个离群值对应元素的检测一个
。
如果
一个
是一个矩阵,然后呢isoutlier
作用于每一列的一个
分开。如果
一个
是一个多维数组,那么isoutlier
的第一个维度一个
的大小不等于1。如果
一个
是一个表或时间表吗isoutlier
对每个变量进行操作一个
分开。
默认情况下,局外人是一个值,三个多了平均绝对偏差(疯了)的值。
例子
检测异常值向量
发现一个向量的离群值的数据。逻辑1的输出表明局外人的位置。
= [57 59 60 100 59 58 57 58 60 300 61 62 62 58 57);TF = isoutlier (A)
TF =1连接逻辑阵列0 0 0 1 0 0 0 0 1 0 0 0 0 0 0
使用意味着检测方法
离群值定义为点超过三个标准差的意思是,和发现异常值的位置向量。
= [57 59 60 100 59 58 57 58 60 300 61 62 62 58 57);TF = isoutlier (,“的意思是”)
TF =1连接逻辑阵列0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
使用移动的检测方法
使用一个移动的检测方法来检测局部离群值的正弦波向量对应一个时间。
创建一个向量包含局部离群值的数据。
0.1 x = 2 * pi: 3:2 *π;一个= sin (x);(47)= 0;
创建一个向量对应的数据一个
。
t = datetime(2017 1 1 0, 0, 0) +小时(0:长度(x) 1);
离群值定义为点超过三个地方从当地平均滑动窗口内按比例缩小的疯狂。发现异常值的位置一个
相对于点t
窗口大小的5个小时。图数据和检测离群值。
TF = isoutlier (,“movmedian”小时(5),“SamplePoints”t);情节(t)在情节(t (TF) (TF),“x”)传说(“原始数据”,“离群数据”)
检测异常值矩阵
发现异常值矩阵的每一行。
创建一个包含异常值沿对角线矩阵的数据。
一个=魔法(5)+诊断接头(200 * (1、5))
一个=5×5217年24 1 8 205年23日15日7 14 16 4 6 213 20 22 10 12 19 221 3 11 18 25 2 209
找到的位置离群值基于每一行的数据。
TF = isoutlier (2)
TF =5 x5逻辑阵列1 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 1
想象离群值阈值
找到一个异类的矢量数据和可视化例外。
创建一个向量包含局部离群值的数据。
x = 1:10;= [60 49 49 58 59 100 61 57 48 58];
查找离群值使用默认的检测方法“中值”
。
[TF, L, U C] = isoutlier(一个);
画出原始数据,异常值和阈值确定的检测方法和中心价值。中心值数据的中位数,和上、下阈值三个疯狂的上方和下方中间。
情节(x)在情节(x (TF) (TF),“x”)yline ([L U C],”:“,(“低门槛”,“上阈值”,“中心价值”])传说(“原始数据”,“离群数据”)
输入参数
一个
- - - - - -输入数据
向量|矩阵|多维数组|表|时间表
输入数据,指定为一个向量,矩阵,多维数组,表,或时间表。
如果
一个
是一个表,那么它的变量一定类型的双
或单
,或者您可以使用DataVariables
参数列表双
或单
显式变量。指定变量是有用的,当你正在与一个表,其中包含以外的变量的数据类型双
或单
。如果
一个
是一个时间表,然后呢isoutlier
只有桌子上的元素进行操作。如果行乘以作为采样点,那么他们必须是唯一的,列按升序。
数据类型:双
|单
|表
|时间表
方法
- - - - - -方法检测离群值
“中值”
(默认)|“的意思是”
|“四分位数”
|“拉布”
|“gesd”
方法检测异常值,指定这些值。
方法 | 描述 |
---|---|
“中值” |
离群值被定义为元素超过三个疯狂的比例值。疯狂的定义是扩展c *值(abs(中位数(A))) ,在那里c = 1 / (√(2) * erfcinv (3/2)) 。 |
“的意思是” |
异常值被定义为元素超过三个标准差的意思。这个方法是健壮但低于更快“中值” 。 |
“四分位数” |
离群值被定义为元素超过1.5上方四分位范围上四分位数(75%)或低于下四分位数(25%)。这个方法是有用的数据一个 不是正态分布。 |
“拉布” |
异常值检测使用拉布的测试异常值,删除一个离群值基于假设检验的每个迭代。这种方法假设中的数据一个 是正态分布。 |
“gesd” |
检测到异常值使用广义极端Studentized偏离检测离群值。这种迭代方法是类似的“拉布” ,但可以有多个异常值时表现得更好互相掩盖。 |
阈值
- - - - - -百分位阈值
双元素行向量
百分位阈值指定为一个双元素行向量的元素是在区间[0,100]。第一个元素表示百分位阈值越低,第二个元素表示上百分位阈值。的第一个元素阈值
必须小于第二个元素。
例如,一个阈值[90]
定义了异常值如下点第十百分位,超过第90百分位。
movmethod
- - - - - -移动的方法
“movmedian”
|“movmean”
移动的方法检测异常值,指定为其中一个值。
方法 | 描述 |
---|---|
“movmedian” |
离群值被定义为元素超过三个地方按比例缩小的疯狂从本地值所指定的窗口长度窗口 。这种方法也被称为Hampel过滤器。 |
“movmean” |
离群值被定义为元素超过三个当地的标准差的意思是在一个窗口指定的长度窗口 。 |
窗口
- - - - - -窗口长度
正整数标量|双元素向量的正整数|积极的标量时间|双元素向量积极的持续时间
窗口长度指定为一个正整数标量,双元素向量的正整数,一个积极的标量时间,或一个双元素向量积极的持续时间。
当窗口
是一个正整数标量,窗口集中当前元素和包含呢窗口1
相邻的元素。如果窗口
是偶数,那么窗口集中有关当前和以前的元素。
当窗口
是一个双元素向量的正整数f [b]
,窗口包含当前元素,b
元素向后,f
元素。
当一个
一个时间表或SamplePoints
被指定为一个datetime
或持续时间
向量,窗口
必须的类型持续时间
,窗户是相对于采样点计算。
昏暗的
- - - - - -操作维度
正整数标量
操作维度,指定为一个正整数标量。如果没有指定值,默认的是第一个数组维度的大小不等于1。
考虑一个米
——- - - - - -n
输入矩阵,一个
:
isoutlier (1)
检测到异常值基于每一列的数据一个
并返回一个米
——- - - - - -n
矩阵。isoutlier (2)
检测到异常值基于每一行的数据一个
并返回一个米
——- - - - - -n
矩阵。
对于输入的数据表或时间表,昏暗的
不支持和操作变万博1manbetx量分别在每个表或时间表。
名称-值参数
指定可选的双参数作为Name1 = Value1,…,以=家
,在那里的名字
参数名称和吗价值
相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。
例子:isoutlier(”,意味着“ThresholdFactor = 4)
R2021a之前,用逗号来分隔每一个名称和值,并附上的名字
在报价。
例子:isoutlier(“的意思是”,“ThresholdFactor”, 4)
SamplePoints
- - - - - -采样点
向量|表变量名|标量|函数处理|表vartype
下标
采样点的采样点,指定为一个矢量值,或者其中一个选项在下表中输入数据时一个表。采样点表示x设在位置的数据,必须进行排序和含有独特的元素。采样点不需要均匀采样。向量(1 2 3…)
是默认的。
当一个表输入数据时,您可以指定采样点作为一个表变量使用这些选项之一。
索引方案 | 例子 |
---|---|
变量名:
|
|
变量指数:
|
|
功能处理:
|
|
变量类型:
|
|
请注意
这个名称参数输入数据时不支持万博1manbetx时间表
。时间表使用行倍采样点的向量。要使用不同的采样点,您必须编辑的时间表,以便行乘以包含所需的采样点。
移动窗口定义相对于采样点。例如,如果t
是一个向量乘以相应的输入数据,然后呢isoutlier(兰德(1 10)“movmean”、3、“SamplePoints”, t)
有一个窗口代表之间的时间间隔-1.5 t(我)
和t(我)+ 1.5
。
当采样点向量数据类型datetime
或持续时间
,移动窗口长度必须有类型持续时间
。
例子:isoutlier (“SamplePoints”, 0:0.1:10)
例子:isoutlier (T,“SamplePoints”,“Var1”)
数据类型:单
|双
|datetime
|持续时间
DataVariables
- - - - - -表变量来操作
表变量名|标量|向量|单元阵列|模式|函数处理|表vartype
下标
表变量操作,指定为这个表的选项之一。的DataVariables
值表示该变量的输入表检查离群值。数据类型必须与指定的变量双
或单
。
第一个输出特遣部队
包含假
不为变量指定的DataVariables
除非的价值OutputFormat
是“表格”
。
索引方案 | 例子 |
---|---|
变量名:
|
|
变量指数:
|
|
功能处理:
|
|
变量类型:
|
|
例子:isoutlier (T,“DataVariables”,“Var1”“Var2”“Var4”])
OutputFormat
- - - - - -输出数据类型
“逻辑”
(默认)|“表格”
输出数据类型指定为这些值之一:
“逻辑”
——表或时间表的输入数据,返回的输出特遣部队
作为一个逻辑数组。“表格”
——表输入数据,返回的输出特遣部队
作为一个表。对时间表的输入数据,返回的输出特遣部队
作为一个时间表。
为向量、矩阵或多维数组输入数据,OutputFormat
不支持。万博1manbetx
例子:isoutlier (T,“OutputFormat”、“表格”)
ThresholdFactor
- - - - - -检测阈值的因素
负的标量
检测阈值的因素,指定为负的标量。
为方法“中值”
和“movmedian”
检测阈值因子代替了疯狂的数量,默认是3。
为方法“的意思是”
和“movmean”
检测阈值因子代替离均值标准差的数量,默认是3。
为方法“拉布”
和“gesd”
检测阈值因子是一个标量范围从0到1。值接近于0的结果在一个更小的数量的异常值,和值接近于1的结果在一个更大数量的异常值。默认的检测阈值系数为0.05。
为“四分位数”
方法,检测阈值因子代替四分位范围的数量,默认值是1.5。
这个名称参数时不支持指定的方法万博1manbetx“百分位数”
。
MaxNumOutliers
- - - - - -最大异常计数
正整数标量
最大异常统计,“gesd”
方法,指定为一个正整数标量。的MaxNumOutliers
返回的值指定的最大数量的异常值“gesd”
方法。例如,isoutlier (A,“gesd”、“MaxNumOutliers”, 5)
返回不超过5离群值。
的默认值MaxNumOutliers
是最近的整数的元素数量的10%一个
。设置更大的值的最大数量的异常值使其更有可能检测到异常值,但代价是降低了计算效率。
的“gesd”
方法假设nonoutlier输入数据采样的近似正态分布。当数据不是以这种方式取样,返回异常值可能超过的数量MaxNumOutliers
价值。
输出参数
特遣部队
——离群值指标
多维数组向量矩阵| | | |表时间表
异常指标,返回为一个向量,矩阵,多维数组,表,或时间表。
特遣部队
一样的尺寸吗一个
除非的价值OutputFormat
是“表格”
。如果该值的OutputFormat
是“表格”
,然后特遣部队
只有变量对应DataVariables
指定。
数据类型:逻辑
l
——低阈值
标量多维数组向量矩阵| | | | |表时间表
低阈值使用的孤立点检测方法,作为一个标量,返回向量,矩阵,多维数组,表,或时间表。例如,低阈值的默认的孤立点检测方法是三个扩展疯狂低于中位数的输入数据。
如果方法
用于异常检测呢l
一样的尺寸吗一个
在所有维度除了操作维度长度是1。如果movmethod
使用,那么l
一样的尺寸吗一个
。
数据类型:双
|单
|表
|时间表
U
——上阈值
标量多维数组向量矩阵| | | | |表时间表
上孤立点检测方法所使用的阈值,作为一个标量,返回向量,矩阵,多维数组,表,或时间表。例如,上阈值默认的孤立点检测方法是三个疯狂的中位数以上的输入数据。
如果方法
用于异常检测呢U
一样的尺寸吗一个
在所有维度除了操作维度长度是1。如果movmethod
使用,那么U
一样的尺寸吗一个
。
数据类型:双
|单
|表
|时间表
C
——中心价值
标量多维数组向量矩阵| | | | |表时间表
孤立点检测方法所使用的中心价值,作为一个标量,返回向量,矩阵,多维数组,表,或时间表。例如,默认的中心价值孤立点检测方法是输入数据的中位数。
如果方法
用于异常检测呢C
一样的尺寸吗一个
在所有维度除了操作维度长度是1。如果movmethod
使用,那么C
一样的尺寸吗一个
。
数据类型:双
|单
|表
|时间表
更多关于
平均绝对偏差
对于一个有限长度的向量一个组成的N标量观测,平均绝对偏差(疯狂)被定义为
为i = 1,2,…, N。
疯狂的定义是扩展c *值(abs(中位数(A)))
,在那里c = 1 / (√(2) * erfcinv (3/2))
。
引用
[1]NIST / SEMATECH电子帐册的统计方法,https://www.itl.nist.gov/div898/handbook/, 2013年。
扩展功能
高大的数组
计算和数组的行比装入内存。
使用笔记和限制:
的
“百分位数”
,“拉布”
,“gesd”
不支持方法。万博1manbetx的
“movmedian”
和“movmean”
方法不支持高时间表。万博1manbetx的
SamplePoints
和MaxNumOutliers
不支持名称参数。万博1manbetx的价值
DataVariables
不能处理的函数。计算
isoutlier (A)
,isoutlier(“中位数”,…)
,或isoutlier(“四分位数”,…)
沿着第一个维度支持只适合个子高的列向量万博1manbetx一个
。
有关更多信息,请参见高大的数组。
C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。
使用笔记和限制:
的
OutputFormat
不支持名称参数。万博1manbetx的
“movmean”
和“movmedian”
方法检测异常值不支持输入数据的时间表,datetime万博1manbetxSamplePoints
值,或持续时间SamplePoints
值。字符串和字符数组的输入必须是常数。
线程环境
在后台运行代码使用MATLAB®backgroundPool
与并行计算工具箱™或加速代码ThreadPool
。
这个函数完全支持线程的环境。万博1manbetx有关更多信息,请参见MATLAB函数线程环境中运行。
GPU数组
加速代码运行在一个图形处理单元(GPU)使用并行计算工具箱™。
使用笔记和限制:
的
“movmedian”
不支持移动的方法。万博1manbetx的
SamplePoints
和DataVariables
不支持名称参数。万博1manbetx
有关更多信息,请参见运行在GPU MATLAB函数(并行计算工具箱)。
版本历史
介绍了R2017aR2022a:返回表或时间表包含逻辑输出
对表或时间表的输入数据,返回一个列表输出特遣部队
而不是一个逻辑数组通过设置OutputFormat
名称-值参数“表格”
。
R2021b:指定采样点作为表变量
对于表输入数据,指定采样点作为表变量使用SamplePoints
名称-值参数。
另请参阅
功能
住编辑任务
应用程序
打开举例
你们possedez一个版本modifiee de cet(中央东部东京)为例。Souhaitez-vous打开cet(中央东部东京)为例用vos修改吗?
对MATLAB
你们有派对在联合国留置权,对应这个对MATLAB:
倒实行la对saisissez-la在fenetre德对MATLAB。Les navigateurs web不sup万博1manbetxportent Les MATLAB命令。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。