作者 | 数据海洋
来源 | haiyangxinyong
一名数据分析师不管在什么行业,在什么类型的企业任职,把服务公司的业务流程、业务逻辑、业务与数据对应起来这是基础的基础。在这个前提下,通过我业务方的沟通与交流,你应该要了解的信息,在时间维度上,可能是未来1个月,3个月,6个月或者12个月:
- 业务背负的KPI是什么?
- 业务痛点是什么?
- 业务要解决的问题是什么?
- 业务今年的重点创新是什么?
- …….
了解信息后,以KPI具体数值的为例:数据分析师可以多问自己几个为什么,然后再和业务沟通你的理解,你才有可能真正理解KPI背后的逻辑与原因。业务包括:
- 了解到这些内容后,数据分析师应该有很多为什么想知道!
- 为什么公司要设定这些KPI指标 ?
- 为什么是这个数值?
很多数据分析师其实都不愿意或者认为去了解和理解这些内容不重要,或者感觉和自己做的事情无关。数据分析师从做的内容来说,可以分成以下几个层次,每次层次的内容和分析师所处的阶段和数据分析师资历有关系。
1
数据需求处理
所谓有数据需求,就是业务团队根据业务需要。向你提出的希望分析师能从数据库中提取的数据内容。例如:本月做了一个促销活动,想知道促销活动带来了多少新客、顾客,同时想看一下,老客户从过去某段时间内累计消费的频次分布。业务基于得到的数据进行活动总结,来分析这次活动是否达到预期。
在一些业务快速发展的企业,数据需求处理往往占据了数据分析师非常大的工作量。对于初级数据分析师来说,可能占据了他们80%左右的工作时间。
很多数据分析师发现,特别是初级数据分析师在工作一段时间后。天天都是拉数据,处理为完的数据需求;公司的大数据平台或者数据仓库建设不是那么完善,数据提取效率比较低。
有时候因为数据底层的问题,导致提取数据的时候,可能用的表不一样,导致数据取错误的数据。数据仓库底层往往表非常多,1千多张是很正常的。很多公司的数据开发/治理不是那么好,导致表的生命周期管理不是很好。经常对不常用的表可能会使用错误。
往往抱怨,数据分析师好像非常没有“技术”含量。但在我个人认为,这往往是最有“技术”含量的,数据需求往往是帮助一个数据分析师,去理解业务,理解业务痛点,和业务建立紧密关系的最重要的场景。
当我还是一个初级数据分析师的时候:
在处理前:
在收到业务数据需求的时候,我往往都会去思考,给自己提几个问题:
为什么要提这个需求?
业务中是谁真正会用这个数据?
要解决的问题是什么?
用这些数据能不能真正解决业务的问题?
在处理后:
当我给出数据需求的时候,一般我会把每个数据的口径说明清楚,对自己给出的数据做出检查。很多时候我会根据我的理解,再对这个需求提供多一些数据内容,帮助他可能要做进一步的数据分析。
对应数据需求的代码,我们做一下归档。往往很多时候,很多业务的数据需求都是会重复的或者相差不大,用写的代代码修改提取数据,速度要快很多。
在处理数据需求过程中,会和业务沟通确定一下数据口径,也一起问一下为什么会需要这个需求,如果态度比较好,一般业务同学都很愿意和你分享。通过与数据需求建立联系后,有空可以和业务一起吃吃饭,交流交流,会让你更清楚业务情况,这样你也更好的知道应该如何提供数据服务,谁需要用相关数据来干什么。“数据需求是理解业务问题与痛点,与业务伙伴建立沟通的桥梁”
经验分享:
在业务比较理解,数据比较熟悉后,我处理数据需求的时候,往往我会在理解完数据需求的基础,主动和业务做一次沟通,一般是说我们一起确定数据口径。然后对数据需求中的数据口径,时间范围作一个讨论,通过确定数据需求。也顺便了解一下业务。
很多同行会说,有时候很忙,没有时候确定。其实,如果你自己有理解清楚需求再加上沟通数据需求,对你后续数据需求处理效率,以及避免需求处理反工有很大帮助。
小观点viewpoint
如果你所有公司有非常多的各种临时需求,一方面:一般说明公司业务还在发展或者变化中,很需要数据来支持和帮助。另一方面:如果你不能很好的响应与处理需求,对你来说是个坏事,你会天天认为自己的工作就是在处理需求,天天都在写SQL代码,没有什么价值。
数据分析师在处理数据需求的同时,必然都是各种数据报表的需求。各个开发或者设计过报表开发的数据分析师,有没有思考过这些问题:
- 为什么需要数据报表?
- 数据报表定位是什么?
- 数据报表要解决谁的问题?
- 数据报表应该怎么设计?
- 如何评估一张报表的好坏?
- 如何对报表进行生命周期管理?
- ……
经验分享:
一个好的数据分析师,往往都有一颗“好奇心”。往往对任何事情都会有很多为什么?对一个数据背后,数据分析师和普通人的思维可能会不一样。同样看到某个报道上,某个城市人均月收入破8千,你的感觉是什么?好奇的数据分析师可以会问以下问题:
- 这个数据是谁统计的?
- 这个数据的收入是怎么定义的?
- 数据有没有误差,有一定可信度下误差可能的范围多大?
- 收入的分布是什么?例如:1-3千,3-5千,……,100万以上
- ……
基于这些进一步的数据后,才能对这些数据背后的东西做判断。所以在设计报表的时候就要基于业务场景,来思考要用什么样的数据来帮助业务做出更正的判断。
2
数据报表设计
在设计报表的时候经验总结来看,可以不断问以几个问题,从而可以帮助更好的把数据报表设计好:
- 报表的使用对象是谁?使用对象分二类,一类是直接使用对象,一类是间接使用对象;例如:把报表数据导出进行个性化加工,发给部门负责人。
- 报表解决什么问题。数据的使用对象,想用这个报表来解决什么问题。比较建议一张报表应该解决一个场景的问题。例如:用于制作
- 报表的使用时间。一般报表什么时候用,这涉及到数据报表的数据更新时间。不同企业数据底层架构的稳定性,数据质量可能不一样。所以在明确报表使用对象基础上,报表什么时候用决定了报表数据更新。
- 报表需要的内容。就是报表具体可以取的数据指标和数据维度,以及数据报表的时间范围。
什么时候应该开发数据报表提供给业务团队使用。当业务提出要开发数据报表的时候,数据分析师应该有基于业务知识的基础上进行判断。正常应该在二种情况下比较适合开发数据报表:
- 业务发展稳定。当一个新业务开始的时候,并不着急开发相关的数据报表。当一个业务刚开始,更适合通过数据需求的方式去处理。因为新业务刚开始的时候经常会发生变化,可能报表刚做好业务又发生变化,同时业务逻辑不稳定,很容易造成报表中的内容指标发生变化。
- 数据需求频率。站在业务角度来说,希望所有的需求都可以开发成报表。方便后续需要数据可以随时去取。但很多需求可能是偶尔性,或者周期性【周期比较长,例如:半月,一月】。从开发、维护成本角度来说,投入产出比不高。数据分析师可以定期手工提取或者自动邮件发送的形式来满足,并不需要做成报表。
经验分享:收到报表需求后,数据分析师应该先有判断。并不应该是收到数据需求后,立即就为开发数据报表做准备,多分析这个数据报表需求,从业务稳定性、数据需求频率等角度考虑。如果不开发成数据报表,可以提供其它方式满足业务。
3
小结
一个数据分析师,如果可以把数据报表设计好,数据需求处理好,对于业务来说,满足了业务基础的数据服务,为业务基于数据对业务异常的定位、监控。
当发现业务KPI数据指标不好,我们定位好问题在哪发生?接下来应该要回答的,解决怎么问题,怎么办?就需要我们开始针对具体的业务问题,和业务场景进行专项的数据分析。下一篇我们一起来探讨,如何开展一个数据分析。