我所理解的互联网BI数据分析师
数据分析师虽然是很多互联网公司都设立的一个职位,但不同公司对这一职位的定位不同。即使是统一公司,在不同的团队,数据分析师的职责,作用和地位也可能不一样。
本文从笔者自己的实际经历出发,总结一下数据分析师工作的内容,要求,工具,技能等多个方面。由于经历尚欠,文章内容难免疏漏,请多多包涵。也欢迎交流。
一、数据分析师的工作内容
从定位上来讲,数据分析师是一个“业务支持”的工种。数据分析本身是通过数据,最终解决商业问题的过程。
按照支持的方向划分,可以分为产品数据分析师和运营数据分析师。
产品数据分析师,顾名思义,侧重于支持产品的分析工作,包括但不限于产品埋点梳理,产品功能分析,产品核心指标分析,产品用户分析。
运营数据分析师的工作主要包括运营策略评估,运营活动分析,日常经营分析,商业效果分析等。两者的共同点是,都需要通过多种方法,从数据中发现当前业务中存在的问题和不足,提出改进策略推进落地,并评估策略或功能上线之后的效果。
因此,他们的产出通常包括基本数据表格,线上数据报表,数据分析报告以及其他相关文档(如埋点文档,PPT报告等)。分析师的产出,既可以是交给产品经理,运营人员等业务方,也可以是上层领导。前者的情况下,分析师通常具有一定的主动权和话语权,而如果是后者,则可能相对被动一些(当然也需要具体情况具体分析)。但两种情况下,数据分析师都是要帮助业务方从更深入的层面理解业务,洞察业务,发现新的增长点。
具体来讲,数据分析师的工作内容有以下方面:
1.1 数据埋点的规划,确认和梳理
无论是一个新的产品功能还是一个运营活动,上线之前必须要对埋点进行规划,确保核心数据指标分的埋点上报逻辑是正确的。数据分析师需要和产品经理配合,共同做好埋点梳理,不能所有的点都埋,也不能漏掉核心的埋点,更不能等上线之后再补埋点。还需要清楚埋点的数据如何从对应的数据表中获取,有没有和现有埋点的冲突,不同版本之间埋点是否存在差异等。进一步的,可能会有一些埋点数据经常需要使用,而埋点的底层表通常数据量很大,直接取效率可能比较低,这时就可以考虑将我们所关心的数据做一个每日定时任务,每日生成一张表,供之后的分析使用。
1.2 数据指标体系的构建
指标是对一个业务场景的定义,需要有指标名称和数值以及相应的算法,必要时还要给出SQL。指标体系是很多指标组成的一个统一整体,既相互独立,有相互关联。构建指标体系通常可以按照指标集+维度集的思路来进行。指标集是围绕核心指标的一系列指标,维度集包括时间维度和空间维度,如年月日周时分秒,全国区域省份城市等。维度集还可以包括业务细分的维度,如操作系统,新老用户,支付方式等。数据分析师在日常工作中,需要梳理不同层级的指标体系,明确其计算逻辑,口径和使用场景,确保能用最合适的指标为业务更好地服务。
1.3 业务日常分析与专题分析
这一部分和前一部分紧密相连。日常分析包括产品功能上线的收益分析,也包括关键指标的日常监控和异动分析。产品上线分析需要结合具体的功能进行。指标监控和异动分析则需要一定的经验。常见的异动分析方法有维度拆解,漏斗分析,公式拆解,指标关联分析等,有时也需要结合外部环境,运营事件等进行。前期可能需要进行一定的探索才能真正找到原因,业务成熟之后,这部分可以考虑上线成为归因分析的系统,自动化定位原因,提高效率。这其实是一个“数据分析思维产品化”的过程,既能够沉淀自己的方法论,也能够通过产品化进行推广,使更多的人受益。
专题分析是工作中价值输出占比比较大的一部分。相比日常分析来讲可能更综合一些,但并没有明确的界限。一般来讲分为3个阶段,6个步骤:
第一阶段,问题识别与构建
Step1:识别问题
Step2:回顾之前的发现
第二阶段,定位问题,并给出解决方案
Step3:建模(变量选择)
Step4:收集数据
Step5:分析数据
第三阶段,传达结果并推动结果落地
Step6:传达给相关方数据分析结果并采取行动
1.4 数据报表的配置搭建
数据报表可能会有多种形式,如每日邮件,tableau,其他线上报表等。也可能具有不同的时间周期,如日报,周报,月报等。线上的报表通常以统计图,统计表的形式呈现,日报周报除了基础数据外,还需要有文字解读,观点建议等。线上报表配置时,通常需要依赖一定的调度任务(每天自动定时产出数据表,线上报表就是把这些表的数据直接或者间接呈现出来)。
二、数据分析师的能力要求
2.1 技能要求
必须指出,任何的技能,都只是工具,只要能达到最终的结果,无论用什么手段都可以,重要的是简单高效熟悉。我们从数据获取,数据预处理,数据分析,结果呈现等几个方面分别来说明。
① 数据获取
SQL技能。我们在工作中的业务数据主要来源于自有的数据库或者数据仓库。这些数据大多是已经由数仓同学处理好的,结构化的,使用SQL(这里是一个广义概念,实际中主要是Hive SQL)是一种最简单有效的获取数据的方式。SQL本身入门门槛低,上手快,专业性不是很强。多写多练,就可以熟能生巧。但一定要注意SQL逻辑和口径的准确性,这需要我们使用正确的表,准确的限定条件,以及根据经验对取数结果进行判断。还要注意SQL的执行效率。
python爬虫。除了在数据库中的数据,我们也常常需要从公司外部获取数据,而python爬虫是获取互联网数据的常见而有效的方式,因此掌握爬虫技能十分重要和必要。爬虫主要包括网页获取,网页解析,数据存储等步骤。python中主要涉及requests,lxml,BeautifulSoup,pyquery,pymysql,pymongo,selenium,scrapy等工具包。
② 数据预处理
这一阶段包含数据清洗和数据预处理两个部分。数据清洗的环节目标是提高数据质量,为后续的分析工作奠定基础,是高质量数据的最后一道屏障。数据质量的标准可以概括为“完全合一”(参考极客时间《数据分析实战45讲》课程)。“完”是指完整性:数据中不应该存在空值,空行等。
“全”是指全面性:主要指同一列数据,单位要统一,定义要明确。
“合”是指合法性:所有数据的取值应该在合理范围内,不能出现异常数据和非法字符等。
“一”是指唯一性:同样的数据不能存在多次。因此该阶段可能的工作包括:数据格式的转换,缺失值填充,重复值删除,处理非法字符等。
而数据预处理主要包括数据集成,数据变换等。数据集成是将不同来源的数据通过一定的手段整合在一起,工业级的数据集成需要用到专业的ETL工具。而数据变换主要指数据的归一化,如Max-Min规范化,Z-score规范化等。以python为例,实际中进行数据清洗,数据集成会用到pandas,数据变换则使用sklearn工具包。
③ 数据分析
这一阶段是数据分析工作的核心,也是最能体现数据分析师价值的地方,需要从“高质量”的数据出发,基于对业务场景的理解,从数据趋势,数据分布,数据计算中总结出业务现状,由此提出业务的改进建议。常见的数据分析方法有:象限法,公式拆解法,对比分析法,归因分析,漏斗分析,留存分析,同期群分析,AB实验等。
实际中,我们通常会使用一些可视化方式提高分析的效率。可视化的工具有很多,Excel是一种,简便易用,适合大多数人。除此外还有Tableau,功能虽然更强大,但需要付费。python中也有很多的数据可视化工具包,例如matplotlib,seaborn,pyecharts,bokeh等。R也是数据可视化时经常会选择的工具。可视化的呈现常用的图表有柱形图,散点图,折线图,扇形图,气泡图,雷达图以及他们的变体和组合等。实现的方式并没有优劣,只需要选择自己擅长的,能达到结果就好。
④ 结果呈现
这里的结果包括分析报告的输出和报表输出。主要是指输出的分析报告会有多种形式,可能是excel表格,可能是word文档,大多数情况可能是PPT。无论哪种形式,既需要有文字结论,也需要辅之以图表清楚地说明问题。因此要求比较熟练地使用office办公套件。
数据报表的输出通常需要对于基础平台有一定的了解,会使用Shell,SQL,HDFS,spark,数据仓库等。要能够处理异常情况,排查错误等,对于上线后出现的可能出现各种bug也需要能够及时准确处理。
2.2 技能要求
这里主要是指对于业务的深入理解的同时,可以结合一些已有的经典模型和理论。例如AARRR模型,RFM模型,二八法则,鱼骨图,马斯洛需求理论,生命周期理论等。这些经典的方法论能够帮助我们寻找思路,也能够帮助我们检验当前工作的完整性。这就需要一定的知识储备,多多摄入一些经济学,心理学,战略管理等知识。
另外,数据分析师需要具备一定的数据敏感度。对于业务上或者行业内的数据,要有一定的预估判断能力,把握一个大概的量级。对于一个数据的可信程度,能够在第一时间做出判断是数据分析师比较基础的一个必备的能力。
前文中我们提到了“产品化”,这也是数据分析师在工作中需要经常总结和思考的。
三、数据分析与数据挖掘
广义上的数据分析包括数据挖掘的内容,例如基于业务进行数据模型搭建。这里就会用到一些经典的数据挖掘算法,例如决策树,朴素贝叶斯,逻辑回归,K-Means。这部分的工作在数据分析师的日常中也会遇到,但可能只占一小部分,不同的公司和团队也不同,需要看具体的情况。
一般的业务分析可能用不到这些方法,但对其有一定的了解还是十分必要。不仅仅因为有时候数据分析师需要使用和产出这些模型,也可能需要对接算法工程师,因此了解常用的机器学习模型(分类,聚类,降维等),甚至深度学习的原理十分必要。个人认为,相比于算法工程师,数据分析师更贴近业务,代码能力和工程能力要求不那么高。
四、数据分析师的困境
目前很多数据分析师的岗位,或多或少都会存在一个问题:Title是数据分析师,实际上却是提数工程师。
数据分析师在工作中缺少主动权和话语权,仅仅被当做是数据工具,这一点眼中违背了这个岗位原本的价值定位。改变这一现状需要分析师提高自己的主动性,主动发现问题,主动提供自己的思考和建议,持续跟进分析结论和效果反馈,提高自己的“存在感”。改变这种现状可能不是一个人能完成的,也不是一朝一夕的能做到的。或许需要自上而下的推动,或许需要很久的摸索,但可以肯定的是,SQL boy的角色没有真正发挥分析师的作用。
五、数据分析师推荐资料
埋点和数据采集平台:
业界使用比较多的有:友盟,Google Analysis,百度统计,talking data,growing io等。
书籍推荐:
《谁说菜鸟不会数据分析》《深入浅出数据分析》《赤裸裸的统计学》《增长黑客》《精益数据分析》《运营之光》
常用网站:
数据分析网:https://www.afenxi.com/
爱统计网:http://www.itongji.cn/
人人都是产品经理:http://www.woshipm.com/
结束语:任何一个岗位都有从入门到精通的一个过程,数据分析师也一样。