同等

查找数据中的异常值

描述

例子

TF= isoutlier (一个返回其元素为的逻辑数组符合事实的当在的相应元素中检测到异常值时一个.默认情况下,离群值是一个大于三倍的值中位数绝对偏差(MAD)远离中间值。如果一个是矩阵还是表格同等分别对每列进行操作。如果一个是一个多维数组,那么同等沿大小不等于1的第一个维度操作。

例子

TF= isoutlier (一个方法指定检测异常值的方法。例如,isoutlier(A,“平均值”)返回符合事实的对于所有元素,平均值的三个以上标准偏差。

TF= isoutlier (一个,百分位数,门槛将异常值定义为中指定的百分位数之外的点门槛. 这个门槛参数是一个包含上下百分位阈值的双元素行向量,例如[10 90]

例子

TF= isoutlier (一个移动方法指定根据定义的窗口长度检测局部异常值的移动方法.例如,等外线(A,'MOVIMEDIAN',5)返回符合事实的对于包含5个元素的滑动窗口内的所有元素大于3个局部缩放MAD的局部中值。

例子

TF= isoutlier (___昏暗的运营以及尺寸昏暗的属于一个对于任何以前的语法。例如,isoutlier (2)对矩阵的每一行进行运算一个

例子

TF= isoutlier (___名称,值指定用于使用一个或多个名称-值对参数检测异常值的其他参数。例如,isoutlier(“SamplePoints”,t)检测数据中的异常值一个相对于时间向量的对应元素t

例子

TFlUC]=isoutlier(___还返回下限和上限阈值以及异常值检测方法使用的中心值。

例子

全部崩溃

查找数据向量中的异常值。输出中的逻辑1表示异常值的位置。

A=[57 59 60 100 59 58 57 58 300 61 60 62 58 57];TF=isoutlier(A)
TF=1连接逻辑阵列0 0 0 1 0 0 0 0 1 0 0 0 0 0 0

将离均值超过三个标准差的点定义为离均值超过三个标准差的点,并在向量中找到离均值超过三个标准差的点。

A=[57 59 60 100 59 58 57 58 300 61 60 62 58 57];TF=isoutlier(A,“中庸”
TF=1连接逻辑阵列0 0 0 0 0 0 0 1 1 0 0 0 0 0 0

创建包含局部异常值的数据向量。

x=-2*pi:0.1:2*pi;A=sin(x);A(47)=0;

创建与中的数据相对应的时间向量一个

t=日期时间(2017,1,1,0,0,0)+小时(0:长度(x)-1);

将异常值定义为在滑动窗口内距离局部中值三个以上的点。在中查找异常值的位置一个相对于中的点t窗口只有5个小时。绘制数据和检测到的异常值。

TF=等外(A,“中位数”,小时(5),“SamplePoints”图(t,A,t(TF),A(TF),“x”)传奇(“数据”“异常值”

为矩阵的每一行寻找离群值。

创建一个包含沿对角线的异常值的数据矩阵。

A=魔法(5)+诊断(200*一(1,5))
一个=5×5217 24 1 8 15 23 205 7 14 16 4 6 213 20 22 10 12 19 221 3 11 18 25 2 209

根据每一行的数据找到离群值的位置。

TF=等外(A,2)
TF=5 x5逻辑阵列1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1

创建包含离群值的数据向量。查找并绘制离群值的位置,以及离群值方法确定的阈值和中心值。中心值是数据的中位数,上下阈值是中位数上方和下方的三个刻度。

x = 1:10;A = [60 59 49 49 58 100 61 57 48 58];[TF, L, U C] = isoutlier(一个);情节(x, x (TF), (TF),“x”,x,L*one(1,10),x,U*one(1,10),x,C*one(1,10))图例(“原始数据”“异常值”“下限”“上限”“中心价值”

输入参数

全部崩溃

输入数据,指定为向量、矩阵、多维数组、表格或时间表。

如果一个是表,则其变量的类型必须为双重的仅有一个的,或者你也可以用“DataVariables”要列出的名称-值对双重的仅有一个的显式变量。当您使用的表包含数据类型不同于的变量时,指定变量非常有用双重的仅有一个的

如果一个那么,有时间表吗同等仅对表元素进行操作。行时间必须是唯一的,并且按升序列出。

数据类型:双重的|仅有一个的|桌子|时间表

异常值检测方法,具体为:

方法 描述
“中位数” 退换商品符合事实的对于距离中间带三个以上的按比例缩放的MAD的图元。按比例缩放的MAD定义为c*中位数(abs(A-中位数(A)))哪里c = 1 /(√(2)* erfcinv (3/2))
“中庸” 退换商品符合事实的对于离均值超过三个标准差的元素。该方法速度快,但鲁棒性差“中位数”
“四分位数” 退换商品符合事实的对于高于上四分位数或低于下四分位数超过1.5个四分位数范围的元素。当数据处于一个不是正态分布。
“格拉布斯” 应用Grubbs的异常值检验,该检验基于假设检验,每次迭代移除一个异常值。该方法假设一个正态分布。
“gesd” 对异常值应用广义极值学生偏差检验。此迭代方法类似于“格拉布斯”,但当存在多个相互掩蔽的异常值时,性能会更好。

百分位数阈值,指定为一个元素位于区间[0,100]中的双元素行向量。第一个元素表示下百分位阈值,第二个元素表示上百分位阈值。例如,阈值为[10 90]将异常值定义为低于第10百分位且高于第90百分位的点。异常值的第一个元素门槛必须小于第二个元素。

检测异常值的移动方法,指定为以下方法之一:

方法 描述
“中位数” 退换商品符合事实的对于超过三个局部比例的图元,在指定的窗口长度上从局部中间带开始按比例缩放
“我的意思是” 退换商品符合事实的对于元素,在规定的窗长范围内,与局部平均值的局部标准偏差超过三个

窗口长度,指定为正整数标量、正整数的两元素向量、正持续时间标量或正持续时间的两元素向量。

什么时候是正整数标量,窗口以当前元素为中心并包含窗口1相邻元素。如果如果是偶数,则窗口将以当前和以前的元素为中心。

什么时候是正整数的两元素向量[b及f],该窗口包含当前元素,b元素向后,以及f元素前进。

什么时候一个是时间表还是时间表“SamplePoints”指定为日期时间持续时间向量,那么必须是持续时间,并相对于采样点计算窗口。

数据类型:双重的|仅有一个的|int8|int16|int32|int64|uint8|uint16|uint32|uint64|持续时间

要沿其操作的维度,指定为正整数标量。如果未指定值,则默认值为大小不等于1的第一个数组维度。

考虑一个矩阵一个

isoutlier(A,1)基于数据的每列中的数据检测异常值一个

isoutlier (2)基于数据的每一行中的数据检测异常值一个

什么时候一个是一张桌子或时间表,昏暗的不支持。金宝app同等分别对每个表或时间表变量进行操作。

数据类型:双重的|仅有一个的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

名称-值对参数

指定可选的逗号分隔的对名称,值论据。名称参数名和价值是对应的值。名称必须出现在引号内。您可以按任意顺序指定多个名称和值对参数,如下所示:名称1,值1,…,名称,值

例子:isoutlier(A,'平均','阈值因子',4)

检测阈值因子,指定为逗号分隔对,由“阈值因子”和一个非负标量。

方法“中位数”“中位数”,检测阈值因子替换缩放MAD的数量,默认情况下为3。

方法“中庸”“我的意思是”,检测阈值因子替换平均值的标准偏差数,默认值为3。

方法“格拉布斯”“gesd”,检测阈值因子是一个从0到1的标量。接近0的值会导致较小的异常值,接近1的值会导致较大的异常值。默认检测阈值因子为0.05。

对于“四分位数”方法,检测阈值因子替换四分位数范围的数量,默认情况下为1.5。

当指定的方法为空时,不支持此名称-值对金宝app“百分位数”

数据类型:双重的|仅有一个的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

样本点,指定为逗号分隔对,由“SamplePoints”和向量。采样点表示数据在中的位置一个. 采样点不需要均匀采样。默认情况下,采样点向量为[1 2 3 ...]

移动窗口是相对于采样点定义的,采样点必须排序并包含唯一的元素。例如,如果t那么,时间向量是否与输入数据相对应呢isoutlier(兰特(1,10),“移动平均值”,3,'SamplePoints',t)有一个窗口表示时间间隔t(i)-1.5t(i)+1.5

当样本点向量具有数据类型时日期时间持续时间,则移动窗口长度必须具有类型持续时间

数据类型:双重的|仅有一个的|日期时间|持续时间

表变量,指定为逗号分隔对,由“DataVariables”以及变量名、变量名的单元格数组、数字向量、逻辑向量、函数句柄或表vartype下标“DataVariables”值指示要在输入表的哪些列中检测异常值,可以是以下值之一:

  • 指定单个表变量名的字符向量

  • 字符向量的单元格数组,其中每个元素都是一个表变量名

  • 由表变量指标组成的向量

  • 一种逻辑向量,其每个元素对应一个表变量,其中符合事实的包含相应的变量和排除它

  • 将表作为输入并返回逻辑标量的函数句柄

  • 一个表vartype下标

与指示变量关联的数据类型必须为双重的仅有一个的

例子:“年龄”

例子:{'Height','Weight'}

例子:@数字的

例子:vartype(数字)

最大离群值计数“gesd”方法指定为逗号分隔的对,由“MaxNumOutliers”和一个正整数“MaxNumOutliers”值指定由“gesd”方法。例如,isoutlier(A,'gesd','MaxNumOutliers',5)返回的异常值不超过五个。

的默认值“MaxNumOutliers”整数是否最接近元素数的10%一个.为最大离群值设置一个更大的值可以确保检测到所有离群值,但代价是降低计算效率。

“gesd”方法假定非异常值输入数据是从近似正态分布中采样的。当数据不是以这种方式采样时,返回的异常值的数量可能超过“MaxNumOutliers”价值

数据类型:双重的|仅有一个的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

输出参数

全部崩溃

异常值指示符,作为向量、矩阵或多维数组返回。元素TF符合事实的一个是一个异常值,并且否则。TF和我的一样大一个

数据类型:逻辑

离群值检测方法使用的较低阈值,返回为标量、向量、矩阵、多维数组、表或时间表。例如,默认离群值检测方法的较低值是比输入数据中值低三倍的MAD。l大小与一个除长度为1的操作尺寸外的所有尺寸。

数据类型:双重的|仅有一个的|桌子|时间表

离群点检测方法使用的上限阈值,以标量、向量、矩阵、多维数组、表或时间表的形式返回。例如,默认离群点检测方法的上限值为输入数据中值上方的三个刻度。U大小与一个除长度为1的操作尺寸外的所有尺寸。

数据类型:双重的|仅有一个的|桌子|时间表

异常值检测方法使用的中心值,以标量、向量、矩阵、多维数组、表或时间表的形式返回。例如,默认异常值检测方法的中心值是输入数据的中值。C大小与一个除长度为1的操作尺寸外的所有尺寸。

数据类型:双重的|仅有一个的|桌子|时间表

更多关于

全部崩溃

平均绝对偏差

对于随机变量向量一个组成N中值绝对偏差(MAD)定义为

疯了=值 | 一个 中值的 一个 |

i=1,2,…,N

缩放的MAD定义为c*中位数(abs(A-中位数(A)))哪里c = 1 /(√(2)* erfcinv (3/2))

扩展能力

介绍了R2017a