文件帮助中心文件
检测和删除数据中的异常值
b = rmoutliers(a)
b = rmoutliers(a,方法)
b = rmoutliers(a,'百分比',阈值)
b = rmoutliers(a,movmethod,window)
b = rmoutliers(___,暗淡)
b = rmoutliers(___,名称,价值)
[b,tf] = rmoutliers(___)
例子
B.= rmoutliers (一种)检测并去除向量、矩阵、表格或时间表中的数据中的异常值。
B.= rmoutliers (一种)
B.
一种
如果一种是行向量或列向量,rmoutliers检测异常值并删除它们。
rmoutliers
如果一种是矩阵,表格或时间表,rmoutliers检测每个列或变量中的异常值一种单独删除整行。
默认情况下,离群值是大于三个比例的中位数绝对偏差(MAD)的值。
B.= rmoutliers (一种那方法)指定确定离群值的方法。例如,rmoutliers(a,'卑鄙')的元素定义离群值一种超过三个标准偏差与平均值。
B.= rmoutliers (一种那方法)
方法
rmoutliers(a,'卑鄙')
B.= rmoutliers (一种,百分位数,临界点)中指定的百分比之外的点定义为异常值临界点。这临界点参数是一个包含较低百分位数和上百分位数的双元素行向量,例如[10 90]。
B.= rmoutliers (一种,百分位数,临界点)
临界点
[10 90]
B.= rmoutliers (一种那movmethod那窗户)指定根据指定窗口检测本地异常值的移动方法。例如,rmoutliers(a,'movmean',5)将异常值定义为超过三个本地标准偏差的元素远离本地均值在五元窗口中。
B.= rmoutliers (一种那movmethod那窗户)
movmethod
窗户
rmoutliers(a,'movmean',5)
B.= rmoutliers (___那暗淡)沿着维度删除异常值暗淡的一种对于任何先前的语法。例如,rmoutliers(a,2)删除列而不是矩阵的行一种。
B.= rmoutliers (___那暗淡)
暗淡
rmoutliers(a,2)
B.= rmoutliers (___那名称,价值)指定使用一个或多个名称值对参数来检测和删除异常值的其他参数。例如,rmoutliers(“SamplePoints”,t)在离群点检测一种相对于时间向量的相应元素T.。
B.= rmoutliers (___那名称,价值)
名称,价值
rmoutliers(“SamplePoints”,t)
T.
[B.那特遣部队) = rmoutliers (___)还返回与行或列对应的逻辑向量一种那是被删除的。
[B.那特遣部队) = rmoutliers (___)
特遣部队
全部折叠
创建一个包含两个异常值的向量,并删除它们。特遣部队允许您确定输入向量中的哪些元素被检测为离群值并删除。
A = [57 59 60 100 59 58 57 58 300 61 62 60 62 58 57];[B, TF] = rmoutliers (A)
B =1×13.57 59 60 59 58 57 58 61 62 60 62 58 57
TF =1x15逻辑阵列0 0 0 1 0 0 0 0 1 0 0 0 0 0 0
(TF)
ans =.1×2100 300
删除传感器的异常值,其中异常值被定义为与数据平均值不同三个标准偏差的点。
A = [57 59 60 100 59 58 57 58 300 61 62 60 62 58 57];[B, TF] = rmoutliers (,“的意思是”)
B =1×14.57 59 60 100 59 58 57 58 61 62 60 62 58 57
TF =1x15逻辑阵列0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
ans = 300
创建一个包含局部离群值的数据向量。
0.1 x = 2 * pi: 3:2 *π;一个= sin (x);(47) = 0;
创建与数据相对应的时间向量一种。
t = DateTime(2017,1,1,0,0,0,0,0,0)+小时(0:长度(x)-1);
将异常值定义为滑动窗口内距离局部中值超过三个局部缩放MAD的点。找出异常值的位置一种相对于点T.窗口大小为5小时,然后取出它们。
[B, TF] = rmoutliers (,'movmedian',小时(5),'samplepoints',t);
绘制输入数据和移除离群值的数据。
情节(t),“b -”,t(〜tf),b,'r-')传说('输入数据'那的输出数据)
创建包含两个异常值的矩阵,然后删除包含它们的列。
一个=魔法(5);(4, 4) = 500;(5) = 500;一种
A =5×517 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 500 3 11 18 25 2 500
b = rmoutliers(a,2)
B =5×317 24 1 23 5 7 4 6 13 10 12 19 11 18 25
输入数据,指定为向量,矩阵,表或时间表。
数据类型:双倍的|单
双倍的
单
“中值”
“的意思是”
'四分位数'
“拉布”
'gesd'
检测异常值的方法,指定为以下之一:
c *值(abs(中位数(A)))
C = -1 /(SQRT(2)* ERFCINV(3/2))
百分位数阈值,指定为两个元素行向量,其元素处于间隔[0,100]。第一元素表示较低百分位数阈值,第二个元素表示上百分位数阈值。例如,阈值[10 90]将异常值定义为低于第10百分位和高于第90百分位的分数。第一个元素临界点必须小于第二个元素。
'movmedian'
'movmean'
用于确定异常值的移动方法,指定为以下内容之一:
窗口长度,指定为标量或双元素向量。
什么时候窗户是一个正整数标量,窗口以当前元素为中心,并包含窗口1邻居元素。如果窗户是偶数,则窗口围绕当前和以前的元素居中。
窗口1
什么时候窗户是正整数的两个元素矢量f [b]时,窗口包含当前元素,B.元素向后,和F元素。
f [b]
F
什么时候一种是时间表还是'samplepoints'指定为datetime或期间向量,窗户必须是类型期间,并且窗口相对于采样点计算。
'samplepoints'
datetime
期间
操作尺寸,指定为1或2.默认情况下,rmoutliers作用于尺寸不等于1的第一个维度。
指定可选的逗号分离对名称,价值论点。的名字是参数名称和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数name1,value1,...,namen,valuen。
的名字
价值
name1,value1,...,namen,valuen
rmoutliers(“ThresholdFactor”,4)
示例点,指定为逗号分隔对组成'samplepoints'和一个向量。样本点代表X- 数据的轴上位置一种,并且必须排序并包含唯一的元素。样品点不需要均匀采样。默认采样点向量是[1 2 3 ...]。
[1 2 3 ...]
笔记
当输入数据是a时不支持此名称值对金宝app时间表。时间表始终使用行时间的向量作为采样点。要使用不同的采样点,必须编辑时间表,以便行时间包含所需的采样点。
时间表
移动窗口相对于采样点定义。例如,如果T.是与输入数据相对应的时间的矢量rmoutliers(rand(1,10),'movmean',3,'samplepoints',t)有一个代表之间的时间间隔的窗口-1.5 t(我)和t(我)+ 1.5。
rmoutliers(rand(1,10),'movmean',3,'samplepoints',t)
-1.5 t(我)
t(我)+ 1.5
当样本点向量具有数据类型时datetime或期间,则移动窗口长度必须有类型期间。
例子:rmoutliers(t,'samplepoints',0:0.1:10)
rmoutliers(t,'samplepoints',0:0.1:10)
数据类型:单|双倍的|datetime|期间
'datavariables'
vartype.
表变量操作开启,指定为逗号分隔对组成'datavariables'以及此表中的其中一个选项。这'datavariables'值表示输入表的哪些变量用于检查异常值。未指定的表中的其他变量'datavariables'传递到输出而不进行异常值。在行的行动时一种那rmoutliers删除具有与指定变量对应的列中具有异常值的行。在列中操作时一种那rmoutliers从表中删除指定的变量。
指定单个表变量名的字符向量或标量字符串
'var1'
“Var1”
字符向量或字符串数组的单元格数组,其中每个元素是表变量名称
{'var1''var2'}
[“var1”“var2”]
表变量索引的标量或向量
1
[1 3 5]
逻辑向量,其元素每个元素对应于表变量,其中真正的包括相应的变量和错误的不包括它
真正的
错误的
[真为false]
函数句柄,将表变量作为输入返回逻辑标量
@Isnumeric.
由此生成的表格下标vartype.函数
vartype('numeric')
例子:rmoutliers (T“DataVariables”[“Var1”“Var2”“Var4”])
rmoutliers (T“DataVariables”[“Var1”“Var2”“Var4”])
“ThresholdFactor”
检测阈值因子,指定为逗号分隔对组成“ThresholdFactor”和一个非负标量。
对于方法“中值”和'movmedian',检测阈值因子替换缩小MAD的数量,默认为3。
对于方法“的意思是”和'movmean',检测阈值因子替换默认为3的平均值的标准偏差的数量。
对于方法“拉布”和'gesd',检测阈值因子是从0到1.接近0的值的标量导致较少数量的异常值,并且接近1的值,导致更大数量的异常值。默认检测阈值因子为0.05。
为了四分位数的方法中,检测阈值因子代替四分位范围数,默认为1.5。
四分位数的
当指定的方法为时,不支持此名称-值对金宝app百分位数的。
百分位数的
'maxnumoutliers'
最大的异常值计数,适用于'gesd'仅作为逗号分隔对的方法组成'maxnumoutliers'和正标量。这'maxnumoutliers'value指定返回的最大异常值'gesd'方法。例如,rmoutliers(a,'maxnumoutliers',5)返回不超过五个异常值。
rmoutliers(a,'maxnumoutliers',5)
的默认值'maxnumoutliers'是最接近元素数量的10%的整数一种。为最大值设置更大的异常值,可以确保检测到所有异常值,但以降低的计算效率为代价。
'minnumoutliers'
最小离群值计数,指定为逗号分隔对,由'minnumoutliers'和正标量。这'minnumoutliers'值指定删除行或列所需的离群值的最小数目。例如,rmoutliers(a,'minnumoutliers',3)删除一行矩阵一种当该列中检测到3个或更多异化符号时。
rmoutliers(a,'minnumoutliers',3)
删除了异常值的数据,返回为向量,矩阵,表或时间表。的大小B.取决于删除的行或列的数量。
删除数据指示符,作为逻辑向量返回。值1(真正的)对应于中的行或列一种那是被删除的。值0(错误的)对应于不变的行或列。方向和大小特遣部队取决于一种和操作的维度。
使用说明和限制:
这百分位数的那“拉布”,'gesd'不支持方法。金宝app
这'movmedian'和'movmean'方法不支持高时间表。金宝app
这'samplepoints'和'maxnumoutliers'不支持名称-值对。金宝app
的价值'datavariables'不能成为函数句柄。
计算rmoutliers (A)那rmoutliers(a,'中位',......),或rmoutliers(a,'quartiles',...)沿着第一维仅支持高柱向量金宝app一种。
rmoutliers (A)
rmoutliers(a,'中位',......)
rmoutliers(a,'quartiles',...)
rmoutliers(a,2)不支持高大的表金宝app格。
有关更多信息,请参阅高阵列。
这'movmean'和'movmedian'检测异常值的方法不支持时间线输入数据,DATETIME金宝app'samplepoints'值或持续时间'samplepoints'值。
对于表输入,暗淡必须平等1。
这'movmedian'不支持移动方法。金宝app
这'samplepoints'和'datavariables'不支持名称-值对。金宝app
有关更多信息,请参阅在GPU上运行matlab函数(并行计算工具箱)。
清洁异常值数据|fillmissing|Fillutiers.|不见了|isoutlier|rmmissing.
fillmissing
Fillutiers.
不见了
isoutlier
rmmissing.
您有此示例的修改版本。您是否希望使用您的编辑打开此示例?
您单击了与此MATLAB命令对应的链接:
在MATLAB命令窗口中输入它来运行命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,在那里获得翻译的内容,并看到当地的活动和优惠。根据您的位置,我们建议您选择:。
你也可以从以下列表中选择一个网站:
选择中国网站(以中文或英文)以获取最佳网站性能。其他MathWorks国家网站未优化您的位置。
联系您当地的办公室