一、目的:
本篇文章详细记录了数据清洗工作的内容及过程,并对清洗的数据质量进行了评估和总结,便于成员对数据的质量有一个清晰认识。
二、背景:
历史数据中存有数据不规范、数据不准确、数据重复记录等问题,为确保业务正常高效运行,必须开展数据全面核实及数据清洗工作,为数据中心的建立奠定坚实的基础。
数据系统的功能模块预计在4月底上线,在系统上线前需要做好数据的清洗工作,将清洁有效的数据迁移到系统中,作为功能模块的基础数据。数据清洗工作的开展是为系统上线实施应用打牢数据基础。
系统将与统一身份认证系统集成,在统一身份认证平台上线之后,系统满足统一身份认证平台通过接口的相关功能需求,故需要将历史的数据清洗完成后同时迁移进两个系统中以满足业务需求。
三、参考资料:
1.《数据清洗总体需求》
2.《数据清洗总体方案》
3.《数据清洗规则》
四、本次数据清洗的问题分类:
1.无效数据
2.空值错误
3.准确性错误
4.格式错误
5.重复记录
6.一码多物
7.一物多码
8.混合型错误
五、本次数据清洗的质量标准:
1.数据的准确性。
2.数据的一致性。
3.数据的唯一性。
4.数据的规范性。
5.数据的及时性。
6.数据的完整性。
六、问题标注:
在数据清洗过程中,需要记录数据现存问题,以便于对其清洗进行评 估,为了便于操作,在数据库表中建立相关字段,进行问题简易标注
七、数据清理:
1.查询表数据:
select * from t_test
2.查询表数据总和
SELECT count(*) FROM t_test
3.添加列字段
alter table t_test add column cleaning_rounds varchar(255) default null comment '清洗轮次' after SECRET;
alter table t_test add column question varchar(255) default null comment '数据问题' after cleaning_rounds;
alter table t_test add column cleaning_results varchar(255) default null comment '清洗结果' after question;
alter table t_test add column detailed_description varchar(255) default null comment '处理细节描述' after cleaning_results;
alter table t_test add column question_description varchar(255) default null comment '问题描述' after question;
4.技术第一轮清洗
update t_test p set p.cleaning_rounds ='T-F1RC'
5.表字段为空查询 (无效数据)
select * from t_test p where p.person_code is null;
6.空值错误 第一次查询 单字段查询
select * from t_test p where p.person_code='';
select * from t_test p where p.country='';
select * from t_test p where p.name='';
select * from t_test p where p.sex='';
select * from t_test p where p.id_card='';
select * from t_test