主要内容

filloutliers

检测和更换数据中的异常值

描述

例子

B= filloutliers (一个,fillmethod)发现异常值一个并根据替代它们fillmethod。例如,filloutliers (A,“之前”)取代了异常值与以前的non-outlier元素。

  • 如果一个是一个矩阵,然后呢filloutliers作用于每一列的一个分开。

  • 如果一个是一个多维数组,那么filloutliers的第一个维度一个的大小不等于1。

  • 如果一个是一个表或时间表吗filloutliers对每个变量进行操作一个分开。

默认情况下,局外人是一个值,三个多了平均绝对偏差(疯了)距离值。

例子

B= filloutliers (一个,fillmethod,findmethod)指定一个方法检测离群值。例如,filloutliers (A,“之前”,“的意思是”)定义了一种离群值的元素一个超过三个标准差的意思。

B= filloutliers (一个,fillmethod,百分位数,阈值)离群值定义为点以外的百分位数中指定阈值。的阈值参数是一个双元素包含上下百分位阈值的行向量,如[90]

例子

B= filloutliers (一个,fillmethod,movmethod,窗口)检测局部离群值使用移动窗口的意思或中值与窗口长度窗口。例如,filloutliers (A,‘以前’,‘movmean’, 5)识别异常值为元素超过三个地方标准差的地方指的是在一个五行窗口。

例子

B= filloutliers (___,昏暗的)指定的尺寸一个操作任何以前的语法。例如,filloutliers(“线性”,2)作用于每一行的一个矩阵一个

例子

B= filloutliers (___,名称,值)指定附加的参数检测和更换使用一个或多个名称参数异常值。例如,filloutliers (A,‘以前’,‘SamplePoints’, t)在离群点检测一个相对于对应元素的向量t

例子

(B,特遣部队,l,U,C)= filloutliers (___)返回的位置信息异常值和阈值检测方法计算。特遣部队是一个逻辑数组表示的离群值的位置在哪里吗一个。的l,U,C参数代表上下阈值和中间值使用的孤立点检测方法。

例子

全部折叠

创建一个向量的数据包含一个异类,并使用线性插值替换局外人。绘制原始和插入数据。

= [57 59 60 100 59 58 57 58 60 300 61 62 62 58 57);B = filloutliers (A,“线性”);情节(1:15,1:15,B,“o”)传说(“原始数据”,“窜改数据”)

图包含一个坐标轴对象。坐标轴对象包含2线类型的对象。这些对象代表原始数据,插入数据。

创建一个向量包含一个异类,和离群值定义为点三个标准差以外的意思。将离群值替换为最近的元素不是一个例外,和情节原始数据和插入数据。

= [57 59 60 100 59 58 57 58 60 300 61 62 62 58 57);B = filloutliers (A,“最近的”,“的意思是”);情节(1:15,1:15,B,“o”)传说(“原始数据”,“窜改数据”)

图包含一个坐标轴对象。坐标轴对象包含2线类型的对象。这些对象代表原始数据,插入数据。

使用移动平均找到当地正弦波,对应时间内异常值向量。

创建一个向量包含局部离群值的数据。

0.1 x = 2 * pi: 3:2 *π;一个= sin (x);(47)= 0;

创建一个向量对应的数据一个

t = datetime(2017 1 1 0, 0, 0) +小时(0:长度(x) 1);

离群值定义为点超过三个本地扩展疯狂远离当地平均在一个滑动窗口。发现异常值的位置一个相对于点t窗口大小的5个小时。填满离群值使用计算阈值的方法“剪辑”原始,情节和填充数据。

[B, TF, L U C] = filloutliers (,“剪辑”,“movmedian”小时(5),“SamplePoints”t);情节(t, t, B,“o”)传说(“原始数据”,填充数据的)

图包含一个坐标轴对象。坐标轴对象包含2线类型的对象。这些对象代表原始数据,填充数据。

离群值矩阵的每一行。

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

一个= randn(5,5) +诊断接头(1000 * (1、5))
一个=5×5103×1.0005 -0.0013 -0.0013 -0.0002 0.0007 0.0018 0.9996 0.0030 -0.0001 -0.0012 -0.0023 0.0003 1.0007 0.0015 0.0007 0.0009 0.0036 -0.0001 1.0014 0.0016 0.0003 0.0028 0.0007 0.0014 1.0005

离群值填充0基于每一行中的数据,并显示新值。

[B, TF,低,上部,中心]= filloutliers (0, 2);B
B =5×50 -1.3077 -1.3499 -0.2050 0.6715 1.8339 3.0349 -0.1241 -1.2075 -2.2588 0.3426 0 0 1.4897 0.7172 0.8622 3.5784 -0.0631 1.6302 0.3188 2.7694 0.7147 1.4172 0

你可以直接访问发现异常值及其满值使用特遣部队作为一个索引向量。

((TF) B (TF))
ans =5×21031.0005 1.0014 1.0007 0.9996×1.0005 0 0 0 0 0

发现一个向量的离群值的数据,和替换使用“剪辑”方法。画出原始数据,填充数据,阈值和中心值取决于检测方法。“剪辑”替换上阈值的异常值。

x = 1:10;= [60 49 49 58 59 100 61 57 48 58];[B, TF,低,上部,中心]= filloutliers (,“剪辑”);情节(x, x、B“o”,x,低*的(10),x,上层* (10),x,中心*(10))的传说(“原始数据”,填充数据的,“低门槛”,“上阈值”,的中心值)

图包含一个坐标轴对象。坐标轴对象包含5线类型的对象。这些对象代表原始数据,填充数据,降低阈值,阈值,中心价值。

输入参数

全部折叠

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

  • 如果一个是一个表,那么它的变量一定类型的,或者您可以使用DataVariables参数列表显式变量。指定变量是有用的,当你正在与一个表,其中包含以外的变量的数据类型

  • 如果一个是一个时间表,然后呢filloutliers只有桌子上的元素进行操作。行乘以必须独特而列按升序。

数据类型:|||时间表

填补方法取代离群值,指定这些值之一:

填补方法 描述
数字标量 填充指定的标量值
“中心” 由中心充满价值findmethod
“剪辑” 填充元素的低阈值小于低阈值决定findmethod。充满元素上阈值大于上阈值决定findmethod
“以前” 充满前面non-outlier价值
“下一个” 充满未来non-outlier价值
“最近的” 充满最近的non-outlier价值
“线性” 填充使用线性插值的邻国,non-outlier值
样条的 使用分段三次样条插值填充
“pchip” 使用一种保形分段三次样条插值填充
“makima” 填充使用修改Akima立方埃尔米特插值(数字,持续时间,datetime数据类型)

数据类型:||字符

方法检测异常值,指定这些值之一:

方法 描述
“中值” 离群值被定义为元素超过三个疯狂的比例值。疯狂的定义是扩展c *值(abs(中位数(A))),在那里c = 1 / (√(2) * erfcinv (3/2))
“的意思是” 异常值被定义为元素超过三个标准差的意思。这个方法是健壮但低于更快“中值”
四分位数的 离群值被定义为元素超过1.5上方四分位范围上四分位数(75%)或低于下四分位数(25%)。这个方法是有用的数据一个不是正态分布。
“拉布” 检测到异常值的测试,使用Grubbs移除基于假设检验的每个迭代一个局外人。这种方法假设中的数据一个是正态分布。
“gesd” 检测到异常值使用广义极端Studentized偏离检测离群值。这种迭代方法是类似的“拉布”,但可以有多个异常值时表现得更好互相掩盖。

百分位阈值指定为一个双元素行向量的元素在区间[0100]。第一个元素表示低百分位阈值和第二个元素表示上百分位阈值。的第一个元素阈值必须小于第二个元素。

例如,一个阈值[90]定义了异常值如下点第十百分位,超过第90百分位。

移动方法检测异常值,指定这些值之一:

方法 描述
“movmedian” 离群值被定义为元素超过三个地方按比例缩小的疯狂从本地值所指定的窗口长度窗口。这种方法也被称为Hampel过滤器
“movmean” 离群值被定义为元素超过三个当地的标准差的意思是在一个窗口指定的长度窗口

窗口长度指定为一个正整数标量,双元素向量的正整数,一个积极的标量时间,或一个双元素向量积极的持续时间。

窗口是一个正整数标量,窗口集中当前元素和包含呢窗口1相邻的元素。如果窗口是偶数,那么窗口集中有关当前和以前的元素。

窗口是一个双元素向量的正整数f [b],窗口包含当前元素,b元素向后,f元素。

一个一个时间表或SamplePoints被指定为一个datetime持续时间向量,窗口必须的类型持续时间,窗户是相对于采样点计算。

操作维度,指定为一个正整数标量。如果没有指定值,默认的是第一个数组维度的大小不等于1。

考虑一个——- - - - - -n输入矩阵,一个:

  • filloutliers (fillmethod, 1)填补了离群值根据每一列的数据一个并返回一个——- - - - - -n矩阵。

    filloutliers (fillmethod, 1)列操作

  • filloutliers (fillmethod, 2)填补了离群值根据每一行的数据一个并返回一个——- - - - - -n矩阵。

    一点filloutliers (fillmethod, 2)行操作操作

对于输入的数据表或时间表,昏暗的不支持和操作变金宝app量分别在每个表或时间表。

名称-值参数

指定可选的双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

R2021a之前,用逗号来分隔每一个名称和值,并附上的名字在报价。

例子:filloutliers (A,‘中心’,‘意思’,‘ThresholdFactor’, 4)

数据选项

全部折叠

采样点的采样点,指定为一个矢量值,或者其中一个选项在下表中输入数据时一个表。采样点表示x设在位置的数据,必须进行排序和含有独特的元素。采样点不需要均匀采样。向量(1 2 3…)是默认的。

当一个表输入数据时,您可以指定采样点作为一个表变量使用这些选项之一:

选择表的输入 描述 例子
变量名

一个特征向量或标量字符串指定单个表变量名

“Var1”

“Var1”

标量变量指数

一个标量变量索引表

3

逻辑向量

逻辑向量的每个元素对应一个表变量真正的指定相应的变量作为采样点,和所有其他元素

(真的假的假的)

函数处理

一个函数处理,表变量作为输入,并返回一个逻辑标量,必须真正的只有一个表变量

@isnumeric

vartype下标

表生成的下标vartype为只有一个函数,返回一个下标变量

vartype(数字)

请注意

这个名称参数输入数据时不支持金宝app时间表。时间表总是使用行倍采样点的向量。要使用不同的采样点,您必须编辑的时间表,以便行乘以包含所需的采样点。

移动窗口定义相对于采样点。例如,如果t是一个向量乘以相应的输入数据,然后呢filloutliers(兰德(10),‘以前’,‘movmean’, 3, SamplePoints, t)有一个窗口代表之间的时间间隔-1.5 t(我)t(我)+ 1.5

当采样点向量数据类型datetime持续时间,移动窗口长度必须有类型持续时间

例子:filloutliers([1 100 3 4],“最近”、“SamplePoints”, [1 2.5 3 4])

例子:filloutliers (T,“最近”、“SamplePoints”,“Var1”)

数据类型:||datetime|持续时间

表变量操作,指定为这个表的选项之一。的DataVariables值表示该变量的输入表来填补。

没有指定表中的其他变量DataVariables通过输出而不被填满。

选项 描述 例子
变量名

一个特征向量或标量字符串指定单个表变量名

“Var1”

“Var1”

向量的变量名

特征向量的单元阵列或字符串数组,其中每个元素是一个表变量名

{“Var1”“Var2”}

[" Var1”“Var2”)

标量或矢量变量指标

一个标量或矢量表变量指标

1

[1 3 5]

逻辑向量

逻辑向量的每个元素对应一个表变量真正的包括相应的变量不包括它

(真的假的真的)

函数处理

一个函数处理,表变量作为输入,并返回一个逻辑标量

@isnumeric

vartype下标

表生成的下标vartype函数

vartype(数字)

例子:filloutliers (A,“之前”,“DataVariables”, (“Var1”“Var2”“Var4”])

替换值指标,当指定为一个值一个是一个表或时间表:

  • 真正的1——输入表变量替换表变量异常值填充。

  • 0——附加输入表变量与表变量异常值填充。

为向量、矩阵或多维数组输入数据,ReplaceValues不支持。金宝app

例子:filloutliers (T,‘以前’,‘ReplaceValues’,假)

孤立点检测的选项

全部折叠

检测阈值的因素,指定为负的标量。

为方法“中值”“movmedian”检测阈值因子代替了疯狂的数量,默认是3。

为方法“的意思是”“movmean”检测阈值因子代替离均值标准差的数量,默认是3。

为方法“拉布”“gesd”检测阈值因子是一个标量范围从0到1。值接近于0的结果在一个更小的异常值和值接近于1的结果数量更多的离群值。默认的检测阈值系数为0.05。

四分位数的方法,检测阈值因子代替四分位范围的数量,默认值是1.5。

这个名称参数时不支持指定的方法金宝app百分位数的

最大异常统计,“gesd”方法,指定为一个正整数标量。的MaxNumOutliers返回的值指定的最大数量的异常值“gesd”方法。例如,filloutliers (A,“线性”,‘gesd’,‘MaxNumOutliers’, 5)返回不超过5离群值。

的默认值MaxNumOutliers是最近的整数的元素数量的10%一个。设置更大的值的最大数量的异常值可以确保所有检测到异常值,但代价是降低了计算效率。

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

已知的异常指标,指定为一个逻辑向量,矩阵,或多维数组的大小一样一个。已知的元素可以是离群值指标真正的表明局外人在相应的位置一个否则。指定OutlierLocations关闭默认的孤立点检测方法,只使用已知的元素异常指标定义异常值。

OutlierLocations名称-值参数不能时指定findmethod都是确定的。

输出特遣部队是一样的吗OutlierLocations价值。

数据类型:逻辑

输出参数

全部折叠

了离群值数组,返回为一个向量,矩阵,多维数组,表,或时间表。

B一样的尺寸吗一个除非的价值ReplaceValues。如果该值的ReplaceValues,然后的宽度B是输入数据的总和变量指定宽度和数量的数据。

填充数据指标,返回为一个向量,矩阵,或多维数组。特遣部队是一个逻辑数组1 (真正的)对应条目F吃饱了和0 ()对应于不变的条目。

特遣部队一样的尺寸吗B

数据类型:逻辑

低阈值使用的孤立点检测方法,作为一个标量,返回向量,矩阵,多维数组,表,或时间表。例如,默认的孤立点检测方法的低价值如下三个按比例缩小的疯狂中值的输入数据。l一样的尺寸吗一个在所有维度除了操作维度长度是1。

数据类型:|||时间表

上孤立点检测方法所使用的阈值,作为一个标量,返回向量,矩阵,多维数组,表,或时间表。例如,上面的值默认的孤立点检测方法是三个按比例缩小的疯狂中位数以上的输入数据。U一样的尺寸吗一个在所有维度除了操作维度长度是1。

数据类型:|||时间表

孤立点检测方法所使用的中心价值,作为一个标量,返回向量,矩阵,多维数组,表,或时间表。例如,默认的中心价值孤立点检测方法是输入数据的中位数。C一样的尺寸吗一个在所有维度除了操作维度长度是1。

数据类型:|||时间表

更多关于

全部折叠

平均绝对偏差

为一个随机变量向量一个组成的N标量观测,平均绝对偏差(疯狂)被定义为

疯了=值 ( | 一个 中位数 ( 一个 ) | )

i = 1,2,…, N

疯狂的定义是扩展c *值(abs(中位数(A))),在那里c = 1 / (√(2) * erfcinv (3/2))

扩展功能

版本历史

介绍了R2017a

全部展开