Median Absolute Deviation(MAD,绝对中位差)和3sigma准则剔除粗差方法对比(代码)
根据文献:
Klos A, Bogusz J, Figurski M, Kosek W (2016) On the handling of outliers in the GNSS time series by means of the noise and probability analysis. In: Rizos C, Willis P (eds) IAG 150 Years. Springer International Publishing, pp 657-664
Leys C, Ley C, Klein O, et al (2013) Detecting outliers: Do not use standard deviation around the mean, use absolute deviation around the median. Journal of Experimental Social Psychology 49:764-766. https://doi.org/10.1016/j.jesp.2013.03.013
根据前者文中提出的绝对中位差剔除粗差的方法,编写matlab程序,与3sigma准则剔除粗差的方法进行对比。其中MAD方法程序如下:
function index = MADmethod(data)
% Detecting outliers by Median Absolute Deviation method
% MAD = b*Mi(|xi-Mj(xj)|)
% which b = 1.4826
% And the criterion of the outlier rejection is (deviation can be 3,2.5 or 2):
% M-3*MAD < xi < M+3*MAD
% which M is the median of the origion time series
% by Rong He, 20200126mad_orig=median(data);
data_sec=[];
for i=1:length(data)data_sec(i)=abs(data(i)-mad_orig);
end
b=1.4826;
mad = b*median(data_sec);
%The decision criterion
% index=[];
% for j=1:length(data)
% if ((mad_orig-3*mad)>data(j) | data(j)>(mad_orig+3*mad))
% index(end+1)=j;
% end
% endindex=find((mad_orig-3*mad)>data | data>(mad_orig+3*mad));
用来实验的序列为模拟某一测站高程方向的时间序列,人为加入60个粗差,效果如下图:
1.MAD方法剔除粗差
2.3sigma剔除粗差
Median Absolute Deviation(MAD,绝对中位差)和3sigma准则剔除粗差方法对比(代码)相关推荐
- Python 详解计算 Median Absolute Deviation(绝对中位偏差)| 还可用于异常值检测
CSDN 叶庭云:https://yetingyun.blog.csdn.net/ In statistics, the median absolute deviation (MAD) is a me ...
- 机器学习数据预处理之离群值/异常值:MAD法(绝对值差中位数法)+绝对中位差(Median Absolute Deviation,MAD)
机器学习数据预处理之离群值/异常值:MAD法(绝对值差中位数法)+绝对中位差(Median Absolute Deviation,MAD) garbage in,garbage out. 异常值是分析 ...
- 绝对中位差( Median Absolute Deviation,MAD)算法
绝对中位差( MedianAbsolute Deviation,MAD) 是一种采用计算各观测值与平均值的距离总和的检测离群值的方法. 本文中主要用来剔除获取到的图像坐标中的离群点. 算法步骤: #离 ...
- 异常值检测 —— MAD(median absolute deviation)
MAD 定义为,一元序列 XiXiX_i 同其中位数偏差的绝对值的中位数(deviation,偏差本身有正有负): MAD=median(|Xi−median(X)|)MAD=median(|Xi−m ...
- Java中遍历Set集合的三种方法(实例代码)
哈喽,欢迎来到小朱课堂,下面开始你的学习吧! Java中遍历Set集合的三种方法 废话不多说,直接上代码 1.迭代遍历: Set set = new HashSet(); Iterator it = ...
- 【javascript基础——系列10】js中隐藏元素的几种方法以及代码
系列文章 [javascript基础--系列1]前端页面ajax连接后台服务器传输数据 [javascript基础--系列2]前端页面axios连接后台服务器传输数据 [javascript基础--系 ...
- 随机森林计算特征重要性_随机森林中计算特征重要性的3种方法
随机森林计算特征重要性 The feature importance describes which features are relevant. It can help with a better ...
- php file_put_contents 换行追加,PHP中file_put_contents追加和换行的实现方法
PHP中file_put_contents追加和换行的实现方法 在PHP的一些应用中需要写日志或者记录一些信息,这样的话.可以使用fopen(),fwrite()以及 fclose()这些进行操作.也 ...
- 清理异常值(MAD:绝对中位差)
清理异常数据: 中位数绝对偏差(MAD):用来描述单变量样本在定量数据中可变的一种标准 在统计学中,绝对中位差是刻画一元数据样本变化的一个鲁棒度量.由公式可以看出,其求解还算简单,给定一个数据样本集, ...
最新文章
- UVA 10041 Vito's Family
- oracle驱动程序包的安装失败,Maven 、oracle的jdbc的jar包下载失败
- 如何反转 Python 中的字符串
- ExtJs、ASP.net运用Linq to SQL与SQL储存过程交互
- threejs加载3D模型例子
- U(优)盘安装FreeBSD-9.0+GNOME_lite桌面
- bilibili go框架_最好的开发语言一定是那位吗?Go语言有话说
- Shuffle Cards(Rope大法)将一段区间的数字整体搬动
- 在Debian 4.0rc3上编译内核2.6.24时加入Layer7模块笔记[防火墙中在TCP/IP第七层Layer7应用层阻挡QQ,MSN等软件的应用]...
- 【语音去噪】基于matlab GUI傅立叶变换语音降噪混频【含Matlab源码 297期】
- Excel表格的35招必学秘技[配图]
- 现代信号处理 张贤达_信号处理领域著名科学家、清华大学张贤达教授逝世,享年 74岁...
- pytorch转onnx: step = 1 is currently not supported以及Exporting the operator silu to ONNX opset version
- Linux服务篇之SSH服务
- Python-爬虫(数据库基本操作,爬取豆瓣电影排行)
- 在新的固态硬盘中安装windows系统(旧固态硬盘已安装ubuntu系统)
- android蓝牙设备类型设置 dev class设置
- 电影《不夜城》的主题曲:金城武、山本未来主演
- 女赛--Girl Love Value (01背包)
- mysql binlog定点恢复锁表_MySQL -- binlog 操作与恢复
热门文章
- 常见文件的文件头(copy)
- 【精】LintCode领扣问题答案:40. 用栈实现队列
- 修改hosts文件,使一个ip指向多个域名
- HITSZ智能证券投资报告(3-19)
- 003 CMOS功耗分析
- Int 的范围 是 65535 还是2147483647
- 怎样做一名“技术布道者”
- asp系统转换php系统时间函数,ASP_ASP中的时间函数大全 时间操作函数,Date 函数 描述:返回当前系统日 - phpStudy...
- AUTOCAD 常用命令
- 网络服务器(硬件+软件)