“ 数据剖析是开展数据质量初始评估的重要技术手段。结合数据特征剖析结果与所掌握的质量预期,证明或证伪关于数据质量的假设和线索,获取质量问题存在的形式和严重程度,为下一阶段数据质量实施提供指导。”
01 数据质量问题评估
02 Python分析环境准备
pip install pandas_profiling
# 导入pandas_profiling分析包
from pandas_profiling import ProfileReport
#导入数据分析基础包
import pandas as pd
#定义并生导入需要分析的数据集
df = pd.read_excel('E:\\LX\\北京市XX地区房源信息201901-质量剖析示例.xlsx',sheet_name='DQ_TEST')
#定义并生成分析报告
profile = ProfileReport(df,title="房屋源数据分析",explorative=True)
#导出分析报告
profile.to_file("房屋源数据分析202210-3.html")
03 剖析结果展示与解读
数据剖析是基于统计学相关方法,对数据集中的数据项进行特征分析,不包含企业相关业务规则逻辑,需要数据质量分析师结合企业业务知识、数据标准、数据常识等对剖析结果进行解读,提炼有价值的信息作为数据质量问题评估依据。
Python剖析分析报告内容主要包括两部分:概要统计、信息项分析。其中信息项分析根据字段类型不同会有若干差异化的二级分析信息。在质量问题解读时,需要根据业务对数据质量的期望,对照剖析各项信息识别存在的质量问题。
概要统计包含三部分,数据集概要、告警提醒以及分析参数。
数据集概要信息:
Number of variables :数据集字段数量
Number of Observations :数据集记录条数
Missing cells:为空的表格单元数
Missing cells(%):空单元格占比, 空单元格/总单元格 *100%
Duplicate rows: 重复记录数
Duplicate rows(%): 重复记录数占比, 重复记录数/总记录数 *100%
Total size in memory:数据集大小
Average record size in memory:平均每条记录的大小
Categorical:具有枚举值特征的字段
URL:具有URL地址特征的字段
Numeric:数值类字段
DateTime:日期类字段
其他类型:Date、Text、Boolean等。
通过对数据集整体概括性统计,让分析人员了解整体情况,包括存在的一些明显数据质量问题。分析示例如下:
2、告警提醒:
显著特征提醒包含数据项内容的基数特征、数据项之间相关性给出数据特征提醒。
Constant:单一基数信息项,该信息项只包含一个有效填充值
Hight cardinality:高基数信息项,绝大部分填充值互不相同
Hight correlation:信息项之间存在高度关联
数据质量问题解读:
3、分析参数
展示分析报告技术信息,包括分析开始、结束时间,用时时长、分析的软件包版本、分析配置文件信息。
(二)信息项分析
1、房源序号(主键)
数据集一般包含系统主键、候选键数据项,根据数据项主键属性以及组成规则识别存在的数据质量问题线索。以此次采集房屋源信息为例,在相关规范和要求中描述为:seqno为主键,由A + 4位流水号组成,以此规则,可解读出问题包括:
主键不唯一:Distinct(%)不等于100%,则表示存在重复记录。
组成规则不符合要求:length应该等于5,存在的其它长度记录为异常。
房屋总价是数值类型,分析报告包含数值相关剖析信息,结合对北京当年房价了解的社会通识,可识别如下数据质量线索:
数值过低:在北京整体房价不足百万与常理不符,Minnum=40 大概率为问题数据。
数值过高:通过数值分布直方图Histogram,大部分数值在2000以内,少数范围外数据需要结合其它字段进一步判断,是否存在录入错误情况。
04 结束语
数据质量是很多企业开展数据治理的重要驱动力,但在具体实践过程中,由于与业务缺乏直接关联、质量问题识别不完整、根因分析与治理不彻底、评估与量化分析缺失等原因,质量工作未能取得“期望”的成绩,导致数据治理成为一个脏活、累活。企业数据质量工作长期处于被动的、由特定事件驱动执行状态。
本次数据剖析是从数据质量问题识别角度,分享借助相关技术工具,深入全面开展质量问题分析的一个方法。通过剖析出的数据特征情况结合业务规则、数据标准、常识等,解读识别存在的数据质量问题线索,为高质量地开展数据质量工作提供一个方法参考。
免责申明:
本文系转载,版权归原作者所有,如若侵权请联系我们进行删除!
想了解或咨询更多有关袋鼠云大数据产品、行业解决方案、客户案例的朋友,浏览袋鼠云官网:https://www.dtstack.com/?src=bbs
同时,欢迎对大数据开源项目有兴趣的同学加入「袋鼠云开源框架钉钉技术群」,交流最新开源技术信息,群号码:30537511,项目地址:https://github.com/DTStack