数据分析师的个人修养
前言
- 先分享:分享给别人后,别人会有不一-样的理解、疑问、 质疑和新想法,会增强我们的认识程度。
- 再使用:每一节课的内容都只是我经历的一一个沉淀,每个人都要结合自己的实际情况去使用,而只有多和同事同学交流,你才能督促自己去对每个知识点进行更深入的理解。
- 在开源知识分享这件事上,1+1>>2
- 使用方法:截屏,花更多的时间去和同事探讨、并独立思考
- 最近遇到一件事的思考:工作中如果别人向你提一个需求 ,双方商定好完成时间后,你真的要按时去完成,如有特殊情况一定要提前解释好。 每- -次交互都是名片的传递,管理好生活点滴
文章目录
- 数据分析师的个人修养
- 前言
- 第一部分
- 第二部分
- 第三部分
- 第四部分
- 第五部分 数据分析师个人修养提升
- 后记
第一部分
1. 岗位情况
1.1 国企
对比JD,我分析我自己,分析公司目前处于的状态,以及日常需要做什么
1.1.1 工作模块
-
日报每天必须要看,通过日报了解业务现状,培养数据敏感性;
-
周报一般用于ppt,因为是短期趋势;
-
月报用于评估目标及战略决策;
-
管理层需要了解背景,提交数据需要一再核对;
-
业务人员需要在处理需求是要思考,怎么样闭环,一定要多沟通。
坚决不做提数机器
-
针对每一个业务单点问题,先追根溯源,简历该业务类的分析框架,由点到面,彻底解决该类问题;同时,在这个过程中,要不断的利用互惠原理和社交技巧,只给业务方做最核心的需求,其他的延申需求让业务自己动手去完成。
-
学会自动化发日报,不要自己做工具人;目标建立,即使在杂事中仍然能够保持清醒;必要时要寻求领导帮助,不轻易给自己挖坑填坑。
-
1.1.2 专题分析
-
需求解读
- 至少花20%的时间分配在沟通上,一定要当面沟通。原始需求->了解需求->本质需求
-
建立逻辑树
- 逻辑树的目的就是让思路更加简单清晰
-
SQL提数及分析
-
提数:SQL三段论,SELECT,FROM,W,ERE
-
分析:组成部分,数量比较,有何变化,各项分布,各项相关性,其他深层次挖掘
-
-
撰写报告
- 90%图10%文,图为主,图表标题说结论:
典型的图表标题说结论
- 结论前置:漏斗结构
- 讲故事:报告的逻辑性一定要强
1.1.3 软技能和面试技巧
- 吹水力
- 展示力
- 时间管理力
- 预判力
面试
- 正装微笑
- 多看书
- 框架性
- 大心脏
1.2 BAT
同样还是分析岗位JD,透过现象看到本质,了解岗位真正需求
1.2.1 日常主要工作
数据异常排查:
数据异常是每个分析师最常见的工作之一,大部分人都缺乏方法论,排查起来没有方向感和层次感,这里看看,那里看看,非常耽误时间,可能最后也没结果。所以,我们要有一套标准化流程去做这件事 ,只有这样,才能成为这块的专家。
数据波动大的原因无非是数据有问题或者业务有问题。
前期准备
- 业务理解
- 指标口径
- 当前数据产出过程
方法论
-
判断是否异常
亲自去看数据准确性,不要人云亦云
时间轴拉长,看看近期异常还是历史异常
看和该指标关联的其他指标或者其他核心指标是否也异常
找到一个关键人物(产品/数据) , 提前沟通一下
-
最大概率法则归类
假期效应:开学季、暑期、四大节、当地节日
热点事件:常规热点如世界杯、突发热点某爆款IP
活动影响:双11,618 ,公司层面活动
政策影响:互联网金融监管、快递行业实名
底层系统故障:数据传输、存储、清洗有无问题
统计口径:业务逻辑更改、指标计算方式更改
-
闭环
持续跟踪后期数据是否再次异常
沉淀、文档化
邮件化:只有确认了没有问题再邮件,描述影响范围和主要结论即可
1.2.2 专题分析
-
有目标:紧贴项目KPI
目的:摸清数据现状,同时找到若干切入点
关键点:不要太注重细节,该过程讲究报告产出的时效性,让其他人员感受到分析师的存在
-
有节奏:2-3周时间输出一份完整报告
-
有闭环:所有的报告说人话,干人事
每一次分析报告都要有能够落地的点,并且真的落地了
1.2.3 面试技巧
最重要的是前三面:
-
一面:电话面
要特别熟悉自己的简历,说话要有条理性和逻辑性,大心脏能力
-
二面:boss1面
准备一些技术,带上一份优秀的专题报告
-
三面:boss2面
了解产品宏观知识,多使用产品APP,要考虑的非常全面。
必问的三个问题:
-
流量波动
-
三个常用APP
-
商业模式
-
1.3 中小企业
1.3.1 三个问题解答
-
流量波动:分析师的经验怎么样
千万不要单点分析,首先要对命题进行解析,有结构有逻辑地分析。快速定位问题,有架构地回答。
-
常用的三个APP:分析师的思考深度怎么样
建议说跟应聘岗位相关的APP,上升到高于普通用户的境界。
-
商业化变现:对商业的最终目的是否敏感
1.3.2 工作角色:斜杠青年
横向上:埋点、口径、指标体系、报表统计、数据清洗、平台研发、专题报告、数据培训
纵向上:对接产品、运营、市场、财务、销售
说白了就是SQL BOY背锅侠
1.3.3 转型:为了让自己及家人更好的生活
作为一名职业打工人,当前的工作要符合下两者之一才能证明挺好
- 当前薪酬不错,在行业中处于前列
- 当前岗位能学到很多有效知识,在你想的到的时间内能快速变现看得见、摸得着,能得到,才最真实
转型分析
1. 规划好自己,再评估和准备
数据分析师这个职位未来有三条线
- 业务线:适合对事物感到好奇并深入研究,思维发散并且能收敛的同学,喜欢展示自我,逻辑思维较强
- 研发线:适合写代码的同学,喜欢安静独处,计算机功底好,天生的程序员基因
- 算法线:适合做研究的同学,数学功底好,很多时候要看各种国外论文
2. 评估自己
这里以业务线为例,这条路线的考量标准有:
- 产品理解能力:各种数据熟悉度、用户从哪里来,进来后做了什么,用户反馈最多问题是什么,竞品数据怎么样
- 分析方法论:常见分析方法有哪些, ab测试,最大概率法则, 28定理,幸存者偏差理解怎么样
- 可视化能力: ppt功底怎么样,专题报告逻辑性、金字塔原理、审美怎么样
- 演讲能力:表达能力、讲故事能力、形象化能力、大心脏能力怎么样
- 协作能力:跟产品、业务、研发沟通时的软技能、如何在团队中定义好自己位置并让其他人很舒服
- 逻辑思维:分析推导过程的全面性、合理性、价值性
- 技术: excel的常见操作、sql能不能闭着眼睛写、r能不能搭建模型并知道有哪些坑、pyt,on是否能很好的用上
3. 优化自己
补短板,最重要的是深入而不是略懂,只有深入才能能自己的洞见
方法论:能快速从一个较全面、逻辑性、价值性的角度去分析,而不是单点无架构性分析,所有方法论都是通过不
断提炼、总结、实践得出来的。这个是评估一个分析师水平的重要标准
4. 寻找对象并实践
- 挑选3家一般公司——面试训练
- 挑选2家规模较大、知名度较高的公司——保底要进
- 挑选2家业内知名公司——尝试
- 设定一个跳槽时间段,比如3个月,期间最重要的事情是瞄准那两家保底要进的公司。注意:由于这两家是你职业生涯的一个转折点,所有简历要单独写,要花几天时间去不断打磨。
- 每一次面试后都有多总结, 找到自己的不足并多训练
- 最后就是面试环节后,最重要的还是表达、表达、表达。所以真正的面试时间是非常长的,前期的准备是要花几个月时间。只有经过这种训练,才能有优秀的企业要你
2. 数据分析工具
2.1 数据分析整体流程
背景:数据分析也是有一套标准化流程的 ,无论是新人还是老司机遇到一个问题时,都要从这一套流程出发去解决问题,而不是直接提数解决战斗
- 明确问题:先把问题定义清楚
- 搭建框架:再把问题考虑全面,找到一条主线
- 数据提取: mysql、Hive为主
- 数据处理:Excel、R、Python为主
- 数据分析:数据分析方法论为主
- 数据展现:Tableau、excel、 R、Python
- 撰写报告:文笔功底,整体逻辑性
- 报告演讲:沟通能力,表达能力,被提问能力
- 报告闭环:最难也是最大价值
工具说明
工具 | 应用场景 | 掌握程度 |
---|---|---|
MySQL、Hive | 基本上所有的数据获取方式 可以进一步学习一些Linux命令 |
超级熟练 数据提取不能出错 |
Excel | 最高频、最有机会展示的数据处理工具 | 超级熟练 |
R | 统计语言,就是为数据分析而生,简单易学,但是计算能力较差,可能稍微大点的数据导入就死机了 | 熟练 |
Python | 脚本工具,可扩展性极强,算法研发同学必备,数据分析以pandas包为主,其他包含爬虫,文本挖掘 | 熟练 |
2.2 EXCEL常用操作
2.2.1 对比分析
对比分析:所有的数据只有对比才有意义,每年的双11都会与之前的双11进行消费额对比;实际工作中,最常见的对比对象就是大盘,比如新上线一个功能 ,怎么样评估这功能效果,除了看功能使用人数,更加要做的是这个功能的留存和大盘的留存对比。
2.2.2 时间序列拆解分析
时间序列二次拆解分析:一般看某指标时,都会把时序周期拉长,看数据趋势,而数据都是波动的,所以都会进行拆解分析,寻找具体波动项
2.2.3 相关性分析
相关性分析:在做某个子产品的时候,都会被问到你这个子产品对大盘的贡献度或者说影响度,这个时候就可以用相关性去说话
2.2.4 临界点分析
临界点分析:对于任何一款产品,高活跃用户与低活跃用户在产品使用上必然不同,那么就可能存在,某个指标,一旦用户在这个指标上的消费超过某个临界值时,后面用会变得非常粘性,这就是Magic number
2.3 SQL常见问题
不是会,而是要闭着眼睛都能写
2.3.1 如何训练SQL
常见现象: 一旦表关联较多,内部逻辑稍微复杂,就怀疑自己的代码准确性系
解决方案:
- 公司内有一个写sql高手,那么在前期每次怀疑时,一 定要把代码给对方review ,多请教,同时看他写代码的风格和逻辑,模仿。2个月之后再评估自己水平
- 公司内大家SQL水平都差不多,这个时候只能靠自己,可以这样做:
利用下班时间,把你怀疑的代码,按照你认为应该的几种逻辑,全部运行一遍 ,然后看哪个数据跟当前已知数据(一定要有一个已知数据作为参考,否则真不知道对与错)最为靠近,再去反推为何这样写看着更加合理。 - SQL是否熟练的标准:当别人让你快速跑一个数的时候,你的内心非常自信和高兴
2.3.2 SQL常见问题
-
**Max函数:**对某一个误认为是数值型但实际是字符串型字段取最大值,采用max函数,发现结果一直有错,如13<9, -60<-70
**解决方法:**select max(a+0)
-
**日期处理:**日期取年月份,时间戳取日期,日期格式转换等等需求,经常出现各种问
**解决方法:**先百度看用什么函数来转,在正式跑数据前,直接select函数(a)测试下
一种特殊的日期处理 是北京时间和Unix时间转换:
selectfomunixtime(time), select from_ _unixtime(cast(substr(time,1,10) as int))(毫秒计时)
-
**先聚合再计数:**如果要计算某个维度下的用户数,不要直接count(distinct imei) ,而应该是
Select city,count(1) as uv from ( select city,imei,count(1) from a group by city imei ) t1 group by city
-
**一列变多行:**ab测试中会对一个用户打很多标签,而这些标签都是存在一个字段中 ,所以要看标签维度指标,就要对该字段进行列变行拆解
Select *,b from t1 Lateral view explode(a) table as b
-
**取TOP:**要看某分类下的top10消费额子分类(金额一致就并列)
Select *,rank() over(partition by a order by b desc) as rank from table t1 (窗口函数)
-
避免数据倾斜:
小表在左大表在右,使用map join,同时对空值进行过滤
Select /*+mapjoin(a)*/ t1.city,t2.type,count(t1.imei) as uv
From
( select imei,city,count(1) as pv from a w,ere imei != " group by imei,city ) t1
Join
( select imei,type,count(1) as pv from a w,ere imei !=“group by imei,type ) t2
On t1 .imei=t2.imei
Group by t1.cty,t2.type
2.4 R语言、Python脚本案例
2.4.1 R语言机器学习
常见问题:对于一个产品的重要指标如留存,影响的因素非常多, 那么就需要找出这些影响因素的重要性,从而知道围绕哪些因素运营更好提升留存
SQL和excel明显都解决不了
换种方式理解上面这段话:哪些指标最能够区分用户留存还是未留存,越是阴显区分,越重要
转化为机器学习语言: 对于一个用户,他有一个y (留存/未留存),还有很多x(各种影响因素),需要找出x与y的关系,并给出x的重要度排序,可以用随机森林,逻辑回归,决策树来实现
2.4.2 Python相比R的其他价值
-
爬虫:实际价值很大,比如爬取一些竞品数据,用R就不太方便
举例:资讯类APP的很多文章就是通过爬取下发给大家
-
文本挖掘:对评论数据的研究,比如APP评论数据分析,从而知道如何去做评论运营闭环
举例:京东网易APP的评论运营,其他APP的热点评论置前
-
UDF函数:
,IVE自定义函数有时并不能满足需求,此时就需要自己定义函数来实现需求,这个时候就可以用Pyt,on写UDF
举例:计算基尼系数, ,IVE中直接调用UDF能够很快输出
-
算法研发同学:个性化推荐、底层运维、WEB开发
非常强大的第三方库,在基础库的基础上再开发,避免重复造轮子
总结
- 国企的数据分析:打磨好综合技能
- BAT的数据分析:方法论研究
- 中小企业数据分析:如何准备去转型
- 数据分析常见工具:常见的工具操作,关键还是要提升业务能力
第二部分
3. 数据分析多元思维模型
3.1 背景
整个行业中,大部分同学偏数据库和机器学习,造成一种错觉:
只要会点技术,再能做个PPT ,就可以做数据分析了,门槛太低,部分同学做了几年数据分析,觉得就到瓶颈了,同时很难去界定一个分析师是否优秀 ,觉得大家可能都差不多
真实情况是:
你做出的分析别人能很快的发现问题,你也认可,但就是不知道如何避免,针对某个问题,有些人总是能有很多想法,你也不知道怎么理解,有些人职业发展的很顺利,有些人始终在瓶颈
3.2 中观能力
- 真正的专业度,能够很好的发现其他分析师分析中的问题
- 需要长期总结和思考,但多数同学都没掌握
中观能力:专业度,包括技术理解,逻辑性,价值点三个点
中观能力是反映分析师基本功怎么样、套路熟不熟练、思考到不到位的一种标准
技术理解:对分析需要用到的技术是否理解到位,是停留在理论阶段还是实践阶段
一定要理解这个只是理论上的方法,只有理解到数据标准化的本质目的是去除量纲量级的差异性,才能用好这个方法
技术是为了让业务更加方便高效,而不是让人困惑
逻辑性:整体思考的逻辑性是否欠缺。
每一环节的推导必须要讲究严谨性
价值点:做出来的东西价值在哪,如果现在你是决策者,你敢不敢立马规划落地。
有没有价值不是分析师说了算,是业务方说了算,有些点很好但暂时无法落地,就先不要管他
中观能力的提升相对比较容易,基本上就是从他人那里获得有效反馈,然后多实践就行
3.3 微观能力
-
有效沟通力+快速发散收敛力,能够从业务的交流中发现问题,找到方向
-
很多同学都没有意识到这个点
在中观能力相同的情况下,有些分析师总是表现的比其他分析师更加优秀,比如:
-
针对某个问题,总是能产生很多想法,找到切入点——想象力
-
业务方如果遇到问题就会优先找他,而他总是能在最短的时间内给业务方一个较好的答复——解决问题能力
-
对于数据有更好的敏感度,能够第一个 发现数据问题并给出解法——敏感度
-
会议上,总是能提出自己的独到观点,让别人觉得他很聪明一一快速发现提问
-
总是能很好的知道业务在干啥,而他的视角又一直是高于业务,所有人都认可——高维视角
这些都是分析师微观能力的表现:始于经验,终于沉淀,注重点点滴滴,思维高度活跃,总是能找到一些线索
-
3.3.1 微观能力理解
微观能力:包括有效沟通能力和快速发散收敛能力
微观能力是反映分析师平时的微观体感怎么样,作为一名分析师,你必须要能够发现到很多业务方发现不到的点,然后从数据上给出策略建议
前提:先知道业务是怎么想的,怎么做的,然后从中发现问题或者切入点,解决问题,这样就能高于业务
有效沟通能力:与业务方核心人员沟通,从谈话中快速捕捉到很多有用信息(说者无心听者有意)
快速发散收敛能力:基于沟通中的有效信息,快速提炼总结找到最好的分析切入点
所谓的好奇心或者说想象力,实都不是凭空产生的,回归到数据分析本质,只有和相关业务方(不一定是直接接触业务方)多沟通,从他们那里获得有效信息,再自身提炼加工(多学习、思考) ,才是可落地的天马行空,这个也就是优秀分析师厉害的地方(快速捕捉,提炼,找到问题,解决问题)
3.3.1.1 有效沟通能力的两个技巧
-
技巧1:黄金思维圈法则
在了解业务的情况下,反问业务方为何要做这件事,基本上,业务方都会有一个很具体的回答,往往都能在这里找到切入点
多问为何要做这件事往往就能找到问题的本质,解法自然就多了
-
技巧2:做一些准备工作再沟通
与业务沟通中,如果没有提前准备一些业务知识和数据 ,整个过程就是业务在主导,你还怎么发现问题呢
实际工作中,分析师都不一定知道会议主题、或者知道主题没有思考就去参加会议,可想而知整个讨论,除了了解一些基础信息外,还能干什么,也就是说,你只是知道这些信息,却无法获得有效信息
会议是一个很好的公共场合,也是分析师证明自己独特视角的地方,所以沟通前做好一定准备 ,不仅没有浪费时间,还能让别人觉得你很厉害
3.3.1.2 快速发散收敛能力
**发散:**对于某一个全新业务问题,跟业务沟通之后,分析师想法很多
**收敛:**在众多想法中,快速找到当前做哪个比较实际、合理,并且知道如何做的深入
3.3.1.3 微观能力的培养
- 尽可能多的和业务核心人员,特别是业务Leader沟通,看他们是如何思考业务的
- 多看心理学、社交学、记忆力、科普类、经济学的书籍
- 刻意练习,慢慢养成习惯
3.4 宏观能力
- 洞见性的全局观,能够从社会事件、整个行业发展中找到业务的决策方向
- 极难,平台和天赋缺一不可
宏观能力:能够把当前业务与实际社会热点、行业风口联系起来,提前预判,获得更好的决策
宏观能力非常难,如果做好了基本就是顶级CEO了,大部分同学都没有机会接触到这一层面(需要你有一定的决策权)
宏观能力案例: