入门数据分析师 (进来了解一下吧, 走过路过, 千万不要错过~)

数据分析师

 

“数据分析师是专门从事行业数据搜集、整理、分析,并依据数据做出行业研究、评估和预测的专业人员”

 

入门数据分析师 (进来了解一下吧, 走过路过, 千万不要错过~)

 

数据分析 = 分析工具 + 分析思维

 

发展方向

  • 业务线: 适合对事物感到好奇并深入研究,思维发散并且能收敛的,喜欢展示自我,逻辑思维较强的人。

  • 研发线: 适合写代码的人,喜欢安静独处,计算机功底好,天生的程序员基因。

  • 算法线: 适合做研究的人,数学功底好,因为很多时候要看各种国外论文。

 

 

 

入门数据分析师 (进来了解一下吧, 走过路过, 千万不要错过~)

 


各种数据分析工具的使用场景对比

 

数据分析整体流程

  • 标准化流程的九个步骤:

    1. 明确问题,先把问题定义清楚,因为很多人还没理清问题就直接去看数据了;

    2. 搭建框架,定义问题之后再把问题考虑全面、找到一条分析主线;

    3. 数据提取,用 MySQL、Hive 等工具提取相关数据;

    4. 数据处理,用 Excel、R、Python 处理数据;

    5. 数据分析,以数据分析方法论为主来分析数据;

    6. 数据展现,用 Tableau、Excel、R、Python 工具把你的数据展现出来;

    7. 撰写报告,考验你的文笔功底以及整体逻辑性;

    8. 报告演讲,考验你沟通能力,表达能力,被提问能力。所有的报告撰写完成之后不要直接去讲,还是要和业务方进行大量的沟通,如果不提前做好沟通,你在会议或公众场合上讲时很容易被别人挑战;

    9. 报告闭环,这是最难也是最大价值的地方。

  • 明确问题、搭建框架、撰写报告、报告演讲、报告闭环更多是考验分析师的综合能力以及智商、情商,所以这块往往需要很多时间去沉淀。

  • 数据提取、数据处理、数据展现是数据分析师前期的基本功,以工具为主。

  • 必须要学的工具:

    工具 应用场景 掌握程度
    MySQL、Hive 基本上所有的数据获取方式都是通过这两种来实现,同时要学习一些 Linux 命令,因为在排查数据异常时会用到。 超级熟练,因为数据提取环节是不能出错的
    Excel 最高频的数据处理工具。比如,领导直接让你现场画个图。 超级熟练
    R 一门统计型语言,专门为数据分析而生,简单易学,但缺点是计算能力确实比较差,容易死机 熟练
    Python 一门真正的脚本语言,可扩展性极强,算法研发必备。数据分析以 Pandas 包为主,其他常用包含爬虫、文本挖掘。 熟练

 

Excel 常用操作

一般通过 SQL 在数据库中提取数据,保存到本地 Excel,所以 Excel 是最基础也是最重要的一个数据分析工具,能用 Excel 坚决不用其他工具。

  • 对比分析(筛选和色阶功能)

    • 在工作中最常见的对比对象就是大盘,比如:新上线一个功能,怎么样评估这个功能效果,除了看功能使用人数,更要做这个功能和大盘的留存对比,如果高于大盘留存,代表这个功能有非常好的正向效应。

    • 举例:我们需要看自身 App 与竞品的重合用户与自身 App 的所有用户在客户端内的消费差异,从而针对这些重合用户,做针对性运营,这时就要用到对比分析。

  • 时间序列拆解分析(透视图功能)

    • 一般看某指标时,都会把时序周期拉长,看数据趋势,而数据都是波动的,所以会进行拆解分析,寻找具体波动项。

    • 在时间序列拆解分析流程中,透视图功能是非常有用的,操作也不复杂,一定要学会。

    • 举个例子:新增用户的次日留存近半年出现下降,需要进行渠道维度拆解分析,看整体下降是因为所有的渠道下降还是某个别的渠道下降导致的。

  • 相关性分析(常用函数功能)

    • 会用到函数功能以及加载项功能。

    • 落实到场景是:在做某个子产品的时候,都会被问到你这个子产品对大盘的贡献度或者说影响度,这个时候就可以用相关性去说话。

    • 无论是相关性回归还是傅里叶系数,甚至偏机器学习,Excel 都可以做。

  • 临界点分析(插入图表复杂功能)

    • 对于任何一款产品,高活跃用户与低活跃用户在产品使用上必然不同,所以会存在某个指标,一旦用户在这个指标上的消费超过某个临界值时,后面用户会变得非常黏性,这就是 Magic number。

 

SQL 常见问题

  • 一旦表关联较多,内部逻辑稍微复杂,就怀疑自己的代码准确性

    • 在前期每次怀疑时,把代码给 SQL 高手 Review,多请教,同时模仿他写代码的风格和逻辑,2 个月之后再评估自己水平。

    • 利用下班时间,把怀疑的代码,按照几种逻辑,全部运行一遍,然后看哪个数据跟当前已知数据(一定要有一个已知数据作为参考)最为靠近,再去反推为何这样写看着更加合理。

  • Max 函数,对某一个误认为是数值型但实际是字符串型字段取最大值,采用 Max 函数,发现结果一直有错,如 13<9-60<-70

    • 在 MAX 括号里面的字段加一个零,把这个字段转化为数值型再进行比较。select max(a+0)

  • 日期处理,日期取年月份,时间戳取日期,日期格式转换等等需求,经常出现各种问题。

    • 先百度看用什么函数来转,在正式跑数据前,直接 select 函数(a)测试下。

    • 一种特殊的日期处理是北京时间和 Unix 时间转换,代码如下:

      select from_unixtime(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 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 where imei != ‘’ group by imei,city)t1
    Join
    (select imei,type,count(1) as pv from a where imei != ‘’ group by imei,type) t2
    On t1.imei=t2.imei
    Group by t1.city,t2.type

 

R 语言常见问题

问题: 对于一个产品的重要指标如留存,影响的因素非常多,需要找出这些影响因素的重要性,从而知道围绕哪些因素运营才能更好提升留存。

  • 这个问题产品经理一定会问,而 Excel 和  SQL 明显都解决不了。

  • 换种方式理解:哪些指标最能够区分用户留存还是未留存,越是明显区分,越重要。

  • 转化为机器学习语言:对于一个用户,他有一个 y(留存/未留存),还有很多 x(各种影响因素),需要找出 x 与 y 的关系,并给出 x 的重要度排序,可以用随机森林,逻辑回归,决策树来实现。

  • 同时用一些代码来实现(代码不需要很复杂),借此来帮助业务找到切入点。

 

Python 相比 R 的其他价值

  • 爬虫:爬虫在工作中价值很大,比如爬取一些竞品的数据,用 R 不方便。

  • 文本挖掘:对评论数据研究价值很大,比如对 App 评论数据的分析,从而知道如何去做评论运营闭环。

  • UDF 函数:Hive 自定义函数有时并不能满足需求,此时就需要自己定义函数来实现需求,这时就可以用 Python 写个 UDF。

  • 对于算法研发同学:个性化推荐、底层运维、Web 开发都是通过 Python 来实现。

 

 

 


国企的数据分析工作

 

日/周/月报

  • 了解业务现状

    • 根据日报数据了解公司业务量

    • 及时指出问题

    • 展现自己

  • 培养数据敏感性, 每天关注数据波动

  • 提供业务发展建议, 寻找波动原因. 产品或运营在做出何种调整后数据出现涨跌

  • 周报可以看作一个短期趋势. (一周的数据会更加稳定, 更具说服力)

  • 月报周期较长. (更能为后续业务提供更合理的发展建议)

 

临时数据

  • 大部分数据分析师职业生涯的第一个痛点

  • 对于高管的临时需求, 优先级最高. 不能立马去做, 要思考为何需要这个数据, 通过这个数据能进行什么决策

  • 业务临时需求是非常繁多的

    • 需要根据实际工作情况合理安排

    • 合理拒绝业务线可以自己解决的事情, 这个需要一定的社交技巧

    • 不断提升自己的工作价值

    • 原则

      • 坚决不做提数机器

      • 针对每个业务单点问题

      • 先追根朔源

      • 建立该业务类的分析框架

      • 由点及面彻底解决该类问题

 

常规工作的优化

  • 如果每天都需要花费很多时间去分析, 可以交给机器处理

  • 保持一颗清醒的头脑, 能够将需求进行合理的优先级排期

  • 遇到自己不能解决的问题时, 及时与自己的领导进行沟通, 不要盲目做事. 领导大多数时候会看得更高, 难题往往还可以迎刃而解

 

专题分析

  • 各个业务方都会定期给分析师提出一些比较专业的分析业务

  • 需求解读, 至少花费 20% 时间花在解读需求中

    • 原始需求

    • 了解需求

    • 本质需求

  • 建立逻辑树, 让思维更加清晰, 打好基础, 如下所示

    • 活动前 ~ 每天流量效果, 流量波动原因拆解

    • 活动中 ~ DAU, MAU, 新用户进入 ...

    • 活动后 ~ 新用户沉淀, 客服数据 ...

    • 活动运营分析:

  • SQL 提数及分析

    • 提数: SQL 三段论, 所有想法验证的第一步

    • 分析: 组成部分/数量比较/变化/各项分布/各项相关性/其他

  • 总结非常重要, 需要不断总结, 撰写报告的三个建议:

    1. 以图为主: 90% 的图加 10% 的文, 一定要以图为主, 图表标题说结论

    2. 结论前置: 如果报告最终要呈现给领导, 那么在邮件中要把结论前置, 然后报告以附件发送同时在正文中也要把结论前置

    3. 逻辑性一定要非常强, 同时演讲过程也需要故事感, 站在领导角度去想他要听什么?

 

软技能及面试技巧

  • 想在一家公司发展往往需要靠软技能:

    • 在国企做好数据分析, 除了自身专业技术过硬外, 情商的修炼必不可少.

    • 能够快速领会领导的意图, 并很好地表达及展示, 往往决定了后续发展的高度

    • 除了加器自身专业技能, 平时还需要多看一些心理学, 社交学等书籍并付诸实践

  • 国企软实力分为四种:

    • 吹水力: 同事之间多沟通, 对事物发表看法

    • 时间管理力: 最高效的时间去做最重要的事情

    • 展示力: PPT 展示有时候比内容还要重要

    • 预判力: 国企表现机会多, 能提前预判并做好相应准备能更好营销自己

  • 在国企的面试中, 无论是谈心环节, 还是面试环节都要表现得自信, 谈吐大方

 

 

 


BAT 的数据分析工作

 

数据异常排查

  • BAT 的数据产品 DAU 都比较大, 动辄几百万, 甚至过亿. 需要一套方法论来排查解释数据的波动.

  • 数据有较大波动, 就两个原因:

    1. 目前数据本身有问题

    2. 业务本身有问题

  • 数据异常排查的前期准备:

    1. 业务理解

    2. 指标口径

    3. 当前数据产出过程

  • 数据异常排查步骤

    • 持续跟踪后期数据是否再次异常

    • 记录, 沉淀, 文档化, 后续可能会遇到相同问题

    • 邮件化, 只有确认没有问题再发邮件给相关方

    • 描述影响范围和主要结论即可

    • 假期效应: 开学季, 暑假, 四大节, 当地节日

    • 热点事件: 常规热点, 突发热点

    • 活动影响: 双 11, 618, 公司层面活动

    • 政策影响: 互联网金融监管, 快递实名

    • 底层系统故障: 数据传输, 存储, 清洗有无问题

    • 统计口径: 业务逻辑更改, 指标计算方式更改

    • 亲自去看数据准确性, 不要人云亦云

    • 时间轴拉长, 看是近期异常还是历史异常

    • 该指标关联的其他指标或其他核心指标是否异常

    • 找到关键人物(产品/数据), 提前沟通

    • 判断是否异常

    • 最大概率法则原因归类

    • 闭环

 

专题分析

  • 三个特点:

    • 有目标 - 紧贴项目 KPI

    • 有节奏 - 2~3 周时间输出一份完整报告

    • 有闭环 - 所有报告都说人话, 做人事

  • 第一阶段 -- 新用户留存整体分析

    • 目的 - 摸清数据现状, 同时找到若干切入点

    • 关键点 - 不要太注重细节, 该过程讲究报告产出时效性, 让其他人员感受到分析师的存在

  • 第二阶段 -- 寻找优化切入点, 一般是 1~2 个

    • 对相关架构图进行细致分析

  • 第三阶段 -- 不断重复前两个阶段, 继续寻找新切入点

    • 除了寻找产品本身的切入点, 同时需要进行

    • 竞品分析, 营销活动分析, 用户流失分析等

    • 整个过程就是在不断地"试错"

    • 每一次分析报告都要有能落地的点

    • 并且真的落地了, 这就是闭环

 

BAT 面试技巧以及必问问题

  • 这几家公司的面试基本上都是五到六面, 前三面最关键. 所有面试都是基于简历.

    • 要有亮点, 因为到这一般都是总监面

    • 要有高度, 从宏观的角度谈论

    • 关键点是逻辑性, 对简历上的信息熟悉

    • 第一面基本上都是电话面

    • 第二面是 Boss 一面

    • 关键点是实操性

    • 第三面是 Boss 二面

  • 必问的三个问题:

  1. 流量波动, 数据突然涨了怎么分析?

    • 考察分析师的经验

  2. 分析下你手机里面最常用的三个 APP 是哪三个?

    • 考察分析师的思考深度

  3. 商业模式, 你之前产品的 CPC/CPM 及商业模式是啥样? 你在这一块是怎么优化的?

    • 考察对商业的最终目的是否敏感

 

 

 


中小企业的数据分析工作

 

中小企业日常工作

  • 做的事情比较杂, 比较多, 跟救火员一样忙

  • 技术上

    • Java, Python, R 都熟练, 觉得功底还可以, 实际上没有真正落地过

  • 研发埋点

    • 字段格式, 字段名, 字段取值, 打点日志,

    • 文档沉淀

  • 口径和指标体系梳理

    • DAU/MAU 的定义和计算方法

    • 某产品的核心指标以及具体业务性指标

  • 报表统计

    • 所有的报表增加, 修改

    • 改来改去还是没完

  • 专题分析

    • 开展营销活动, 需要做活动分析

    • 整体偏单点分析, 缺乏逻辑连贯性和全面性

  • 平台研发

    • 开发内部一套大数据平台, 比如数据库仓库

    • 参与开发或者参与底层数据库清洗

 

要制定好转型目标和计划

  • 是否名校背景? 是否在知名公司呆过? 是否有比较大项目产出? 是否运气好?

  • 转型四步法:

  1. 规划好自己, 再做评估准备

  2. 评估自己 (发现不足和优点)

  3. 优化自己 (弥补短板)

  4. 寻找对象并实践 (多总结多训练)

    • 选择几家一般性的公司作为面试训练

    • 挑选两家大公司作为保底

    • 挑选两家领头羊公司作为挑战目标

    • 制定保底公司的跳槽时间段