返回极智社区
数据分析干货篇:异常值的检测与处理
发表用户:Hexuan 发表时间:3 年前
异常值,指的是那些远离绝大多数样本点的特殊群体,也称为离群点。通常这样的数据点在数据集中都表现出不合理的特性。如果忽视这些异常值,在某些建模场景下就会导致结论的偏差(如线性回归模型、K均值聚类等),所以在数据的探索过程中,有必要识别出这些异常值并处理好它们。
01 异常值的检测方法
通常,异常值的检测可以借助于数据描述、图形法(如箱线图、正态分布图)和建模法(如线性回归、聚类算法)等方法,接下来将结合平台分享这些操作。
1.数据描述
进入基线分析<数据描述,分析之后主要是看数据中的最大值、最小值和四分位值,依据专业知识或个人经验,判断是否超过了理论范围值,数据中有没有明显不符合实际情况的错误。

2.图形法
1)箱型图
进入表制作<比较图功能,在绘图中选择“箱型图”,分析之后如下图所示,会展示数据的上下界、上下四分位数、中位数等,我们把超过上下界的值称为异常值。
上界 =上四分位数 + k(上四分位数 - 下四分位数)
下界 =下四分位数 - k(上四分位数 - 下四分位数)
当k=1.5时表示中度异常;当k=3时表示高度异常。箱形图中默认k=1.5。
(说明:这个k值也是平台中“数据整理”下面的“异常值处理”功能中的“异常偏离值处理”方法中的偏离比例。)

2)散点图
进入“图表制作”下面的“点线图”功能,在绘图中选择“散点图”,分析之后如下图所示。
散点图通过展示两组数据的位置关系,可以清晰直观地看出哪些值是离群值。异常值会改变数据间的关系,通常在研究数据关系,如进行回归分析前,都会先做散点图观察数据中是否存在异常值。

3)正态分布图
进入“基线分析”下面的“正态性检验”功能,当数据服从正态分布的时候此功能使用比较多,在这种情况下,异常值被定义为一组测定值中与平均值的偏差超过3倍标准差的值。
在数据处理的时候,按照正态分布的性质,三个标准差以外(概率小于千分之三)的数据都可以被看作是错误的数据从而排除掉。

4)线性回归
进入智能AI分析<机器学习回归功能,回归方法选择“线性回归”,在线性回归分析中,如果样本中出现异常值,那么会影响回归模型的建立、参数的估计以及预测。
所以,回归分析中异常值的研究一直是统计学中的热点问题。我们可以利用残差分布情况来判断是否存在异常值。

5)聚类算法
进入智能AI分析<机器学习聚类功能,用聚类方式划分数据为不同的簇,计算簇内每个点对于簇中心的相对距离(相对距离 = 点到簇中心的距离/这个簇所有点到簇中心距离的中位数),根据分析结果可以看出孤立点。

02 异常值处理
1.直接将该条观测删除
这种方法简单易行,但缺点也很明显,首先我们经常会遇到的情况是观测值很少,这种删除会造成样本量不足,其次,直接删除的观测值较多时,也可能会改变变量的原有分布,从而造成统计模型不够稳定。
2.暂且保留,待结合整体模型综合分析
通常我们观测到的异常值,有时在对于整个模型而言,其异常性质并没有观测到的明显,因此最好综合分析一下。
像回归分析,我们经常利用残差分布信息来判断模型优劣,残差有没有超出经验范围(3倍标准差),呈现什么分布等,另外对于整个模型而言,会有一些指标像R方、均分误差等可以提供某条观测或整体的拟合信息,这些指标也会提示分析人员的异常值信息。如果对于整个模型而言,并不是很明显时,建议保留。
3.如果样本量很小,可以考虑使用均值或其他统计量取代
这不失为一种折中的方法,大部分的参数方法是针对均值来建模的,用均值取代,实际上克服了丢失样本的缺陷,但却丢失了样本“特色”,可以说是不大不小的错误。
当然如果是时序数据,用于取代的统计量,可供选择的范围就会多一些,可以针对序列选择合适的统计量取代异常值,也较少存在上述问题。
4.将其视为缺失值,利用统计模型填补
该方法的好处是可以利用现有变量的信息,对异常值(缺失值)填补。不过这里最好要视该异常值(缺失值)的特点而定,例如需视是完全随机缺失、随机缺失还是非随机缺失的不同情况而定。
03 平台异常值处理技术
进入数据整理<异常值处理功能,平台提供两种所属方法选择分别为:异常偏离值处理和非数值异常处理,可以根据数据属性选择不同的方法。
可以看出平台主要用填补的方法对异常值进行处理,填补方法有:中位数填补、均值填补、众数填补、零值填补、空值填补。
对于想通过建模的方法对异常值进行处理,可以先通过空值填补,其操作界面如下图所示,然后进行结果保存,最后在“智能数据填补”功能里选择建模的方法对数据进行填补。

数据分析干货
评论区
添加新评论
请先登录后发表评论(・ω・)
发布于
回复
发布于
回复
请先登录后发表评论(・ω・)
发表
评论
微信扫码登录/注册极智分析
忘记密码
注册
登录
手机登录
注册
更改密码
已有账号,立即登录
注册
发表