中位数绝对偏差(MAD)法处理离群值

追求适度,才能走向成功;人在顶峰,迈步就是下坡;身在低谷,抬足既是登高;弦,绷得太紧会断;人,思虑过度会疯;水至清无鱼,人至真无友,山至高无树;适度,不是中庸,而是一种明智的生活态度。

导读:本篇文章讲解 中位数绝对偏差(MAD)法处理离群值,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

作者:非妃是公主
专栏:《数学建模》
个性签:顺境不惰,逆境不馁,以心制境,万事可成。——曾国藩
在这里插入图片描述

中位数绝对偏差(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×xiMj×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|

xiMj(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

M3×MAD<xi<M+3×MAD


or

x

i

M

M

A

D

<

3

\vert \frac{x_i-M}{MAD}\vert<3

MADxiM<3

其中,

M

M

M为样本中位数,

x

i

x_i

xi为样本值。不满足上述两式的被判断为离群点,满足等式的判定为正常点。

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)效果图')

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/130523.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!