一般情况下,数据清洗的目的就是选择出有缺陷的数据,然后再将它们正确化和规范化,从而达到用户要求的数据质量标准。其中数据缺陷可能包括以下几种情况:数值重复、数据缺失、数据错误、数据范围混淆、存在“脏”数据和数据不一致性等几种情况,如图4-7所示。其中数值重复是指标准不唯一,很多数值都代表着相同的含义。数据范围混淆是指相同的数值会应用到不同的场合中,代表着不同的含义。
第一步,需要跟业务部门进行沟通交流,为了提高数据的质量,得到标准的数据,应该首先过滤掉不符合业务要求的数据,这些数据都违背业务规则,数据清洗过程会根据业务规则去修正这些数据,每个业务规则都规定了数据必须满足的条件,然后通过ETL程序去修正这些不符合业务规则的数据。
第二步,为了确保用于决策分析的数据质量,需要跟用户积极沟通,将缺失的数据补全,最后才能过滤到数据仓库中。而那些错误的数据,应该等用户完全修正后再抽取。重复的数据,同样应该等用户确认完毕后再进行抽取。我们应该理解数据清洗是一个非常费时、复杂的工程,需要多个业务部门的配合和技术开发人员对业务数据的理解,通过不断修正问题和解决问题才能完成。
图4-7 数据缺陷图
数据清洗的流程包括以下几个方面:
(1)定义业务数据源
标识出满足需求的数据源,并且决定什么时候进行数据清洗。
(2)分析业务数据源
分析数据源的数据是否符合业务的规则和定义,是否存在非正常的数据结构。
(3)将数据标准化(www.xing528.com)
定义标准化格式的数据,并且加以转换。
(4)通过业务规则修正错误数据
定义是否为正确数据的标准,确定如何处理错误数据的方法。
(5)合并数据
将属于同一实体的多个数据进行合并,合并时应该有去重的功能。
(6)总结数据错误类型
通过总结数据出错的类型,提高清洗程序的完整性和正确性,从而降低数据出现重大问题的可能性。
数据清洗的流程图如图4-8所示。
图4-8 数据清洗的流程图
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。