作者:非妃是公主
专栏:《数学建模》
个性签:顺境不惰,逆境不馁,以心制境,万事可成。——曾国藩
中位数绝对偏差(MAD)是由Hampel(1974)发现并推广的,中位数(M)和平均数(mean)一样,是中心趋势的衡量标准,但它的优点是对异常值的存在非常不敏感。异常检测模型的击穿点是可以被污染(即设置为无穷大)而不迫使模型出现错误(在规模估计器的情况下为无穷大或空)的最大观察比例。例如,当单个观测值具有无限值时,所有观测值的平均值就变成了无限值;因此,平均值的击穿点是0。只有当超过50%的观察值是无限的时候,中位数才会出错。在分解点为0.5的情况下,中位数是具有最高击穿点的离群点估计模型。MAD作为一个异常检测的模型(定义见下面的公式),利用了中位数的这一特性。初此之外,MAD完全不受样本大小的影响。
M
A
D
=
b
M
i
×
x
i
−
M
j
×
x
j
MAD=bM_i\times x_i-M_j\times x_j
MAD=bMi×xi−Mj×xj
其中,
x
j
x_j
xj是n个原始值的观测值,
M
i
M_i
Mi是
∣
x
i
−
M
j
(
x
j
)
∣
\left|x_i-M_j\left(x_j\right)\right|
∣xi−Mj(xj)∣的中位数,
M
j
M_j
Mj是
x
j
x_j
xj的中位数,即一个单一维度数据集合。通常情况下,
b
=
1.4826
b=1.4826
b=1.4826,这是一个与数据的正态性假设有关的常数。假设数据整体具有正态性,不考虑离群值所引起的异常。
一般情况下,在中位数上下3倍MAD值范围内波动被认为是正常数据,超过3倍MAD值被认为是离群值,判断公式如下:
M
−
3
×
M
A
D
<
x
i
<
M
+
3
×
M
A
D
M-3\times MAD < x_i<M+3×MAD
M−3×MAD<xi<M+3×MAD
∣ x i − M M A D ∣ < 3 \vert \frac{x_i-M}{MAD}\vert<3 ∣MADxi−M∣<3文章来源:https://www.toymoban.com/news/detail-476164.html
其中, M M M为样本中位数, x i x_i xi为样本值。不满足上述两式的被判断为离群点,满足等式的判定为正常点。文章来源地址https://www.toymoban.com/news/detail-476164.html
clear
clc
close all
%离群值的删除
t = 1:1:4096;
A = load("3A附件/9.txt");% A读入的为一个一维数组
figure(3)
B3 = filloutliers(A,'linear','movmedian',51);%MAD法
hold on
plot(t,A)
% YL = ylim;
% ylim(YL)
xlim([0,4100])
plot(t,B3)
% ylim(YL)
hold off
legend('原数据','去除离散值后','Location','southeast')
title('中位数绝对偏差去除离散值(MAD)效果图')
到了这里,关于中位数绝对偏差(MAD)法处理离群值的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!