大家好啊,今天承接上篇给大家介绍一下数据异常值相关知识,在原理这块需要点数学基础。
上篇文章传送门
异常值概念
最早的定义由 Hawkins 提出:“异常是在数据集中与众不同的数据,使人们怀疑这些数据并非随机产生的,而是产生于完全不同的机制;常见称呼由孤立点、离群点、噪音等。
以我近期操作的气象数据为例(见下图)
在日降雨量中出现32766数值,结合数据自带相关特征值说明,很容易理解32766不可能代表实际意义;
除说明外,还需从数据整体上判断数值是否存在异常(如x地x年x天出现百年一遇暴雨事件,会让该值偏离其他数据,但此时数据是真实的,这时需对数据进行异常值检测。)
- 勿忘数据缺失、重复(根据具体意义核定)、数据格式不一致(参与运算的数字,格式却为文本型)。
- 异常值有时有用,如时序数据的监控、网络入侵监测、医学诊断分析、欺诈监测、故障诊断等;
但有时我们并不需要它,因为它会干扰正常分析结果。
异常值检测常用方法
统计分析
该方法需要一定经验,可通过简单查看最值判断是否在合理方法(亦有帖子写为:业务经验)
3σ原则/拉依达准则
(三倍标准差)
- 前提:
数据满足正态分布 - 原理:
若数据服从正态分布,落在平均值3σ之外的值为0.3%,属于极个别小概率事件
3σ原理
- 操作:
利用excel计算数据平均值,标准差,3倍标准差等,判断数据范围是否在值域即可;可先判最值是否在该值域,从而快速筛选异常值
在Excel中使用3σ原则
- 正态分布的参数μ和σ极易受到个别异常值的影响,从而影响判定的有效性
Z-score(同n倍标准差法则)
前提:服从正态分布(也称高斯分布),公式为
xi是一个数据点,μ是所有点xi的平均值,δ是所有点xi的标准偏差
- 原理:
异常值是分布尾部的数据点,因此远离数据的平均值。
距离的远近取决于使用公式计算的归一化数据点z i的设定阈值Zthr(通常z-score绝对值>3则被认为异常值)
Zthr值一般设置为2.5、3.0和3.5
- 操作:
我用spss讲解哈
Spss操作示意图
Spss结果图
箱型图/箱式图
- 原理:
异常值被定义为超出上下边缘的值,该图可显示最值、四分位数情况
摘自网络
优点:数据无任何限制性要求如正态分布等;识别依赖于上四分数和下四分位数,因此异常值极其偏差不会影响异常值识别的上下边缘,优于3倍标准差
操作:使用excel/spss均可,注意离群值的标注
注:
- l除以上方法,还有DBSCAN聚类方法、孤立森林等,请自行尝试
- l异常值产生可由自然原因如数据缺测、人为因素如数据值丢失、手动输入失误、来源不可靠等造成;
其产生原因会影响处理方法; - l异常值常用处理方法为:
设为空;
填补;
不处理