编辑导语:互联网时代,数据分析的重要性不言而喻,数据分析也贯穿着整个工作的过程,本篇文章作者分享了数据分析的对数日常以及给出了很多可行的方法,希望对你有帮助。
一、数据比对的痛
“这数不对”。
“为什么A这里的数据和B的数据不一致?”
“为什么平时这个数是C今天变成了D?”
“为什么这么高?”亦或是“为什么这么低?”
——【我的对数日常】
一旦有人对某数据提出质疑,就会开始令所有人崩溃的对数。
尤其是经营分析会、月度会议期间,数据团队面临反复且高频的折磨,不同需求方不同角度都等着回答和解释。
- 领导:不理解,为什么没有人能给出来正确的数据?
- 业务:技术给的结果不准…数据质量差,又不能用,又要自己算,数据量太大算不动。
- 数据团队:数据不是我录的、业务数据库不是我设计的、指标逻辑也不是我定义的、运营逻辑和策略调整对数据的影响我也不知道。数据根据逻辑加工出来就是这个样子,不是你想要的,我该解释什么?
非常无辜,非常无语,活还是要干!
不考虑模型设计、不讲数据治理、制度和流程梳、不谈组织合理性、不谈数据意识和数据团队地位,不与业务battle。
落在当下,必须要面对的工作面前,只是想聊一聊“对数到底应该怎么对?”
希望通过这篇文章与数据相关从业的朋友聊一聊“面对常态化数据质疑的处理方式,在不同的场景下数据团队的观点输出”。
二、对数对数,对的是什么1. 数据比对的场景
- 新旧指标对比,新指标上线替换就应用;
- 全新指标上线,证实数据准确;
- 同预期不符或数据波动大,进行数据查验;
- 应用端数据不一致,维度汇总不一致给出解释;
- 数据A和相关数据B不匹配,交叉验证。
2. 数据团队的心态
数据技术有门槛,但数据是公司的数据、是业务的数据。
数据本身没有价值,数据脱离业务应用,就只是磁盘上的文件而已。
对数占用了数据团队大量的时间和精力,消耗耐心和斗志,这种情况下应秉持怎样的心态?
下面是数据团队避无可避的问题:
1)提升团队数据素养
- 对数属于不复杂但大多数人做不好事情,好的数据团队人人都是数据分析师,具有数据思维,懂业务。
- 清楚业务规则,懂业务数据流向。清楚数据映射的业务流程,识别数据问题的业务构成。
- 遇到问题知道从什么地方分析原因,知道要看什么数据。
2)提升公司数据意识和数据产品的可信度
- 数据有天然门槛和屏障,如何拉齐各方的认知?
- 如何方便用户去使用数据?当不缺数据的时候,如何有效使用数据?如何给用户呈现数据?
- 产品思维,数据是结果但对数据的理解是主观的。
- 如何直观、不引导的客观呈现数据?
3)解放人力实现自动化
- 化被动为主动,怎样从无尽的对数中抽离。
- 能提前识别异常、提示变动、给出对照。
- 数据稳定,线下数据走通后,便可以逐步切线上,固化比对逻辑。
3. 对数对数,对的是什么
对数就是实际和预期的弥合,为什么A不是B?
A是数据部门输出的数据,B可能是之前某版本的数据、可能是心理预期、可能是某业务线的手工数据、可能是去年同期数据、可能是上个月的数据。
解决方案有几种:证实“A是对的”;证否“B是错的”。
证实”A/B都是对的,但有cdef造成了两者的数据差异”。
都要给出结论、对照和明细凭据。
三、通用可复制的方法数据比对是有目的的数据分析。
著名的咨询公司Gartner于2013年总结、归纳、提炼出一套数据分析的框架,Gartner把数据分析分为四个层次,分别是:
- 描述性分析(Descriptive Analysis)——发生了什么?
- 诊断性分析(Diagnostic Analysis) ——为什么会发生?
- 预测性分析(Predictive Analysis) ——什么可能会发生?
- 处方性分析(Prescriptive Analysis) ——该做些什么?
数据比对是描述性分析,即对数据现状拆解出数据依据。
那么数据比对的过程,就是描述性数据分析的过程,可按以下顺序进行:
- 确认分析的目的和思路;
- 数据准备、处理及分析;
- 撰写数据结论及报告。
下面具体说如何操作,让观点可执行。
1. 确认分析的目的和思路
1)假设验证确认分析思路
(1)明确对照项[A-B]
确定问题,明确目标,得出A、B哪个正确?差异原因。
首先明确对照项A、B的定义,判断其定义、口径、算法是否一致?
(2)对照指标数据流向及构成
对照数据流向,分析数据构成及计算过程。
确认比对项,时间、口径、统计粒度,度量和维度做筛选还是过滤。
(3)收集数据进行证伪推断,得出结论
准备基础明细数据,导入excel,通过vlookup、透视表等关联分析,关系走通,记录过程数据,提供结果数据。
Example:统计结果比对(数值1vs数据2,差异值)、12明细、差异明细比较。
Tips:明确分析目的和方案前,别急着到处要数,可能费力要了又用不上。
2. 数据一致性验证方式
1)基础认识一致性验证
- 指标的设计过程:定义、计算公式、统计维度(时间)、维度含义、属性定义。
- 指标的技术属性:技术方式、数据源、更新时间。
Example 1:实时、离线指标不一致属于正常情况,可直接解释原因:
- 更新时间天然不同,离线为批处理定时调度任务模式,而实时对数据的时序性有要求,在某些场景并不能保证与离线同等的一致性;
- 计算逻辑无法对齐,离线逻辑相对复杂,支持补偿逻辑,实时处理却相对比较简单;
- 数据源不一致,比如日志在一些场景不能做到完全一致。
Example 2:回款率单位为%,城市结果值求平均并不等于全国数值,也可直接告知业务原因。
2)正向验证
- 确认是否是业务正常变动,如大促暴涨、广告行业的1&2月淡季周期性异常。
- 交叉维度汇总不一致,数据缺失向上汇总记录的处理方式。
3)反向验证
- 任务是否正常?数据是否更新?集群崩溃、任务失败、任务超时、源数据系统字段变更;
- 处理过程是否正常?数据漂移、数据发散、数据倾斜;
- 业务口径数据和数据库数据映射是否一致?不同含义指标取相同名字。
2. 数据准备、处理及分析
1)数据准备
在分析思路确定的基础上,准备收集准备数据,可能是:系统导出、数据提取。
2)数据处理(清洗、转化、提取、计算)
基础数据准备完毕,按既定的思路计算、比对,加工需要的可用于分析的数据。
3)数据分析(数据统计、数据挖掘、数据呈现)
比对后发现并分析差异,用适当的分析方法及工具(极大多数场景Excel足够),对处理过的数据进行分析,提取有价值的信息,形成有效结论。
3. 数据结论及报告
1)明确结论
- 哪个数据是准确的?是什么造成了数据差异,数据差异的构成和占比差异是否合理?
- 是否需要进行修正,计划、难点分别是什么。
2)结果呈现
数据比对的报告不需要精致,能够做到逻辑清晰,图表搭配,层次分明。
让阅读者一目了然理解差异和差异构成就可以进行结果数值比对、差异明细、对照过程及明细。
呈现饼图和柱形图足够了,柱形图看差异,饼图看差异构成。
四、 数据人的下一步应对被动的数据比对之后,如何化被动为主动,进行常态化的数据监控,不再耗心费力疲于应对,提升数据健康度,对数据异动监控提示,实现数据可用可查有提示可预警。
唯一且艰难的道路:有数据质量标准是基础,在制定数据质量计划的标准上,进行周期性的数据质量盘点和数据治理!
这条道路需要数据团队有决心、信心,有足够的耐心和体力,去细致打磨适合企业的数据标准。
需要对每个数据域、数据实体、数据项,甚至到字段、属性,定义数据标准,核实数据质量。
1. 数据质量
(GB/T 36344-2018 数据质量评价标准)
Example:
- 完整性:指数据元素和数据记录完成性,例如:字段是否存在空值,指标数据维度是否足够支撑业务分析。
- 准确性:指数据可信度,例如:是否数据正确、格式合规、唯一性、无脏数据。
- 一致性:指相同数据一致性和关联数据一致性,如:相同指标在不同场景下数值是否一致。
- 时效性:指基于时间段的正确性、基于时间点及时性、时序性,例如:实时能否保证1分钟以内延时,离线能否保证每天9点定时更新。
(GB/T 36344-2018 数据质量评价标准-数据质量评价过程)
2. 数据清洗
在建立数据规范的基础上,就可以进行数据质量提升的行动,也就是“数据清洗”。
数据清洗,就是从数据库表中更正和删除不准确的数据。
1)数据清洗
- 识别数据问题;
- 评估问题及解决方案;
- 清洗计划:更正、删除、合并、替换、补齐;
- 数据应用及周期性质量评估清。
2)数据清洗实践要点
- 数据问题是业务数据问题,需要多方人员参与,全面的考虑上下游联动影响,包括产生数据的、使用数据的。
- 提升源端质量是根本之法,增加系统界面端和数据库输入的的限制,如某些字段非空校验、数据类型校验、唯一约束等。
- 做好备份!做好备份!做好备份!
3. 监控预警
监控预警是化被动为主动的方法,可根据数据质量规则制定监控策略。
通过数据质量监控工具来提示数据异常或数据波动,来确保对业务数据稳定的掌控感和保证数据的准确性,问题处理的及时性。
质量规则不再多说,可以聊一聊波动性,什么样的指标波动可以看作是“异常”呢?
指标波动不可怕,数据波动是业务发生的正常情况,业务产生自然会发生数据变化。
比如每周的销售额肯定不一样,脱离业务场景没法谈数据波动。
但像之前都1000w,这周只有200w,是不是就属于异常状态?
监控可以根据公司业务情况和数据情况来综合评定,通过绝对值预警、相对值预警两方面来设定。
具体的方法有:绝对值、同比环比、周期平滑、假设检验(3σ原则)、时间序列、算法模型。
4. 提前准备
在新需求的设计过程中,就提前准备数据比对的工作。
评估不同线上线下、离线实时的差异,找出可能产生问题的原因并解决,技术架构方案选择,或预评估差异。
5. 一些提醒
1)再次强调:业务、业务、业务
数据必须和业务结合才有意义,熟悉业务才能看到数据背后隐藏的信息。
缺乏对行业、公司业务认知,数据应用和数据分析结果都会出现偏离,变成自嗨或者空中楼阁。
要懂上下游数据,也要弄清楚公司所在行业结构,对行业的上游和下游的经营情况有大致的了解。
2)数据敏感度
数据本身是客观的,但被解读出来的数据是主观的。
同样的数据由不同的人分析很可能得出完全相反的结论,所以一定不能提前带着观点去分析。
Example:比如指标预警没有合适方法,可暂定波动值超过5%预警。
如果一个变量符合正态分布,则其95%的值会落到均值左右二个方差内。
3)迭代化思维
业务是不断调整和发展的,依托的系统和数据也是不断迭代变化,相应指标也需要随着业务不断调整,更加精确的度量业务。
4)精细度控制好,不要追求极细
细分是深入的分析的基础,但不要追求极细,细分意味着复杂,要判断公司团队数据意识和业务精细化管理是否到了匹配的阶段。
本文由 @申墨扬 原创发布于人人都是产品经理。未经许可,禁止转载。
题图来自Unsplash,基于CCO协议。
,