数据挖掘:数据清洗——异常值处理
一、离群点是什么?
离群点,是一个数据对象,它显著不同于其他数据对象,与其他数据分布有较为显著的不同。有时也称非离群点为“正常数据”,离群点为“异常数据”。
离群点跟噪声数据不一样,噪声是被观测变量的随机误差或方差。一般而言,噪声在数据分析(包括离群点分析)中不是令人感兴趣的,需要在数据预处理中剔除的,减少对后续模型预估的影响,增加精度。
离群点检测是有意义的,因为怀疑产生它们的分布不同于产生其他数据的分布。因此,在离群点检测时,重要的是搞清楚是哪种外力产生的离群点。
常见的异常成因:
- 数据来源于不同的类(异常对象来自于一个与大多数数据对象源(类)不同的源(类)的思想)
- 自然变异
- 数据测量或收集误差。
通常,在其余数据上做各种假设,并且证明检测到的离群点显著违反了这些假设。如统计学中的假设检验,基于小概率原理,对原假设进行判断。一般检测离群点,是人工进行筛选,剔除不可信的数据,例如对于房屋数据,面积上万,卧室数量过百等情况。而在面对大量的数据时,人工方法耗时耗力,因此,才有如下的方法进行离群点检测。
二、常用的离群点的检测方法
【1】基于统计模型的方法:
- 首先建立一个数据模型,异常是那些同模型不能完美拟合的对象;
- 如果模型是簇的集合,则异常是不显著属于任何簇的对象;
- 在使用回归模型时,异常是相对远离预测值的对象。
【2】基于邻近度的方法:通常可以在对象之间定义邻近性度量,异常对象是那些远离其他对象的对象。
【3】基于密度的方法:仅当一个点的局部密度显著低于它的大部分近邻时才将其分类为离群点。
【4】基于聚类的方法:聚类分析用于发现局部强相关的对象组,而异常检测用来发现不与其他对象强相关的对象。因此,聚类分析非常自然的可以用于离群点检测。
三、 基于分布(概率模型)的假设检验的方法:
基于统计模型的方法:
统计方法
统计方法。统计学方法是基于模型的方法,即为数据创建一个模型,并且根据对象拟合模型的情况来评估它们。大部分用于离群点检测的统计学方法都是构建一个概率分布模型,并考虑对象有多大可能符合该模型。
离群点的概率定义:离群点是一个对象,关于数据的概率分布模型,它具有低概率。这种情况的前提是必须知道数据集服从什么分布,如果估计错误就造成了重尾分布。
参数方法:
1.基于正态分布的一元离群点检测
- 当数据服从正太分布的假设时在正态分布的假定下,u±3σ区域包含99.7%的数据,u±2σ包含95.4%的数据,u±1σ包含68.3%的数据。其区域外的数据视为离群点。
- 当数据不是对称分布时,可以使用切比雪夫不等式,它对任何分布形状的数据都适用。根据切比雪夫不等式,至少有(1-1/k2)的数据落在±k个标准差之内。所以,有以下结论:
至少有75%的数据在平均数±2个标准差的范围之内;
至少有89%的数据在平均数±3个标准差的范围之内;
至少有94%的数据在平均数±4个标准差的范围之内;
计算得到:通过绘制箱线图可以直观地找到离群点,或者通过计算四分位数极差(IQR)定义为Q3-Q1。比Q1小1.5倍的IQR或者比Q3大1.5倍的IQR的任何对象都视为离群点,因为Q1-1.5IQR和Q3+1.5IQR之间的区域包含了99.3%的对象。
假设检验:根据问题的需要对所研究的总体作某种假设,记作H0;选取合适的统计量,这个统计量的选取要使得在假设H0成立时,其分布为已知;由实测的样本,计算出统计量的值,并根据预先给定的显著性水平进行检验,作出拒绝或接受假设H0的判断。常用的假设检验方法有u—检验法、t检验法、χ2检验法(卡方检验)、F—检验法,秩和检验(非参数)等。假设检验检测离群点原理