数据分析方法 1.缺失值填充
缺失值:缺失值是指粗糙数据中由于缺少信息而造成的数据的聚类、分组、删失或截断。它指的是现有数据集中某个或某些属性的值是不完全的。(百度词条)
1.1 缺失的类型
1.1.1完全随机缺失(missing completely at random,MCAR):数据缺失是完全随机的,不依赖于任何不完全变量或完全变量。不影响样本的无偏性。如:家庭地址缺失。
1.1.2随机缺失(missing at random,MAR):数据的缺失不是完全随机的,该数据的缺失依赖于其它完全变量。如:财务数据缺失情况与企业大小有关。
1.1.3非随机缺失(missing not at random,MNAR):指的是数据的缺失与不完全变量自身有关。如:收入高人群不愿提供家庭收入。
对于随机缺失和非随机缺失,删除记录是不适合的,随机缺失可以通过已知变量对缺失值进行估计;而非随机缺失还没有很好的解决办法。
无偏性:由于未知参数的估计量是一个随机变量,对于不同的样本它有不同的估计量.这些估计量对于参数的真实取值,一般都会有偏差,要求不出现偏差几乎是不可能的。但是,总希望在多次试验中所得到的估计量的平均值与参数的真实值相吻合。(百度词条)
1.2 缺失值的处理
缺失值的处理主要分为三大类:删除元组、数据补齐、不处理。
1.2.1删除元组
将存在缺失信息属性的对象删除,从而得到一个完整的信息表。
优点:操作简单。
作用:在对象有多个属性缺失值,被删除的含缺失值的对象与初始数据集的数据量相比非常小的情况下,特别有效,类标号缺失时常用方法。
缺点:局限性很大。它以减少历史数据来换取信息的完备,会丢弃大量隐藏在这些对象中的信息。在初始数据集包含的对象很少的情况下,删除少量对象足以严重影响信息的客观性和正确性。
1.2.2数据补齐
此类通常基于统计学原理,根据初始数据集中其余对象取值的分布情况来对一个缺失值进行填充。常用方法如下:
一、人工填写(Filling Manually)
方法:顾名思义通过人工填写的方法来完善数据对象。
该类方法的填充效果最好。但是在数据量过大时,工作量大、可行性低。
二、特殊值填充(Treating Missing Attribute values as Special values)
方法:将缺失值作为一种特殊属性值来处理,它不同于任何的属性值。比如:Unknown等。
该类方法可能造成严重的数据偏离,一般不推荐使用。
三、平均值填充(Mean/Mode Completer)
方法:对于初始数据集中待处理数据为数值属性时,缺失值用平均值处理;待处理数据为非数值属性时,缺失值用众数处理。
该类方法通过最大概率可能的取值来补充缺失值,通过现存数据来推测缺失值。
四、热卡填充/就近补齐(Hot deck Imputation)
方法:在完整的数据集中找到一个与含有缺失值对象最相似的对象,然后使用相应数值进行填充。
该方法概念上较为简单,利用了数据间的关系来进行空值估计。但是这个方法的缺点在于难以定义相似,主观因素较多。
五、K最近距离邻法(K-means Clustering)
方法:根据欧式距离或相关分析来确定距离具有缺失数据样本最近的K个样本,将这K个值加权来估计该样本的缺失数据。
该类算法精度高,对异常数据不敏感,无数据输入假定。但是空间复杂度高,使用数值型或者标称型(目标变量只在有限集合中取值)数值。
六、使用所有可能的值填充(Assigning All Possbile value of the Attribute)
方法:遍历所有可能值。
该类方法能得到较好的补齐好过,但是计算代价过高。
七、回归(Regression)
方法:基于完整的数据集,建立回归方程。对于包含空值的对象,将已知属性值代入方程来估计未知属性值,以此估计值进行天成。
该类方法在变量非线性相关时,会产生有偏差的估计。
八、期望值最大化(Expectation Maximization,EM)
(待补充)
1.3 不处理
无论如何处理缺失值,都是主观的存在。不一定完全符合客观事实。对缺失值不正确的处理,通常会使数据产生新噪音,使最后数据挖掘的结果产生偏差。因此,我们可以保持初始数据集不变前提下进行处理。
不处理缺失值,直接将包含控制的对象进行数据挖掘的方法包括:贝叶斯神经网络和人工神经网络等。
1.3.1 贝叶斯神经网络
(待补充)
1.3.2 人工神经网络
(待补充)