登录
首页精彩阅读数据清洗中异常值如何处理(下)
数据清洗中异常值如何处理(下)
2019-03-25
收藏

数据清洗工作中面对的对象有三个——异常值,缺失值和重复值。而每个肮脏数据都是有各自的清洗方法,尤其是异常值的方法是最多的。由此可见,数据中的异常值是有很多的,在上一篇文章中我们给大家介绍了关于清洗异常值的一些方法,在这篇文章中我们会继续为大家介绍异常值的清洗。

第一我们给大家介绍的是基于模型检测,具体操作就是先建立一个数据模型,异常是那些同模型不能完美拟合的对象;如果模型是簇的集合,则异常是不显著属于任何簇的对象;在使用回归模型时,异常是相对远离预测值的对象。而这个方法的优点就是有坚实的统计学理论基础,当存在充分的数据和所用的检验类型的知识时,这些检验可能非常有效,当然,缺点就是对于多元数据,可用的选择少一些,并且对于高维数据,这些检测可能性很差。

第二就是基于距离检测,通常可以在对象之间定义邻近性度量,异常对象是那些远离其他对象的对象。这种方法的优点就是简单。缺点就是基于邻近度的方法需要O(m2)时间,大数据集不适用。当然该方法对参数的选择也是敏感的。同时不能处理具有不同密度区域的数据集,因为它使用全局阈值,不能考虑这种密度的变化。

第三就就是基于密度,当一个点的局部密度显著低于它的大部分近邻时才将其分类为离群点。适合非均匀分布的数据。这种方法的优点就是给出了对象是离群点的定量度量,并且即使数据具有不同的区域也能够很好的处理,同时与基于距离的方法一样,这些方法必然具有O(m2)的时间复杂度。对于低维数据使用特定的数据结构可以达到O(mlogm)。而缺点就是参数选择困难。虽然算法通过观察不同的k值,取得最大离群点得分来处理该问题,但是,仍然需要选择这些值的上下界。

最后就是基于聚类,一个对象是基于聚类的离群点,如果该对象不强属于任何簇。离群点对初始聚类的影响如果通过聚类检测离群点,则由于离群点影响聚类,存在一个问题:结构是否有效。优点就是基于线性和接近线性复杂度(k均值)的聚类技术来发现离群点可能是高度有效的,而簇的定义通常是离群点的补,因此可能同时发现簇和离群点。缺点就是产生的离群点集和它们的得分可能非常依赖所用的簇的个数和数据中离群点的存在性。同时聚类算法产生的簇的质量对该算法产生的离群点的质量影响非常大。

在这篇文章中我们给大家介绍了关于数据清洗的剩余一部分知识,通过对这些知识的了解可以帮助我们更好地理解数据分析工作。希望大家通过对这些数据分析清洗方法的学习,可以在工作时更加得心应手,也算是提升个人的职场竞争力。

数据分析咨询请扫描二维码

客服在线
立即咨询