数据异常很大一部分原因是自身对问题的理解与需求方意图不一致导致的,所以需要积极与需求方沟通,从以下方面依次进行排查问题:
数据口径不一致等理解差异;数据源更新延迟等数仓侧原因;数据未上报/未采集等开发侧原因;先解释下什么叫最小单元。最小单元就是对有这样问题表现的群体(即集合)进行不同维度(特征)的划分,直到找到某个集合,该集合中的群体都有这样的问题表现。 举个例子,假设我们发现,某电商交易平台月活客户数持续下降。 在问题提出时,我们得到的群体是“平台特定周期内所有活跃客户”,但是具体去看的时候,发生活跃度降低的用户群可能仅仅是某些渠道来的新客,也可能是具有某些群标签的老客,也可能是某些地区的用户(无新老客的差异),而我们要做的,就是对“平台特定周期内的活跃客户”进行一级二级三级等粒度维度的划分,具体去看呈现出异常表现的是具有哪些特征的人群。 在这一步,用到的仅仅是人群维度的结构化拆解,注意维度列举时应遵循MECE原则,即:相互独立,完全穷尽。
假设在第二步,我们定位到问题呈现现的最小单元是:某些投放渠道来的新客、某些城市的新客和某些城市的老客; 基于第二步的“最小单元”,梳理出每个单元涉及的相关方和相关因素。 其中相关因素就涉及需求方的工作了,所以记得平时多和需求方沟通学习,了解合作方的工作内容。数据分析师能力模型中,所谓的“懂业务”,一部分就是可以通过这种多沟通的方式得到提升,特别是当你遇到一个很专业很能打的合作方。 针对梳理出来的因素,我们可以提出猜想并进行验证(以排除无关因素): 1、【渠道】是不是渠道本身质量有问题? 2、【渠道】是不是投放渠道配置的素材有问题,以致吸引的客群质量不佳? 3、【渠道】是不是投放选的人群标签不对? 4、【地区】是不是有竞对在分走客户? 5、【地区】是不是区域的运营策略做了调整且调整后效果没有之前好? 6、【地区】是不是区域最近有什么大事件,影响用户消费? … 列出各种猜想后,通过搜集相关资料和数据,来排除肯定错误的猜想,保留有证据支持的猜想。
在第三步的基础上,排除掉确定无关的因素,且有证据表明剩余因素相关,若相关因素唯一,则原因定位到了,反馈给合作方,后续持续跟进问题解决即可; 若相关因素不唯一,则需要通过对比分析等方法,测算出各个因素对结果的影响程度,和需求方一起讨论解决方案以及各个子方案的优先级。
上述的方法一定程度上可以解决大多数异动分析问题,但是还是会遇见一些无法通过数据分析定位到异常原因的数据异常,这个时候就得上用户调研了。 高手在民间,用户的行为,只有你想不到,没有他们做不到的。实在分析不出来,就去回访用户爸爸吧。