# 6.4数据分析的五个步骤

> 讲解数据分析的一般流程——数据获取、数据清洗、数据分析、验证发现、数据可视化五个步骤，涵盖五类数据来源、六种清洗对象、七种分析手段、三类统计谬误与多种可视化形式，并附数据分析书单。

---

LLMS 索引： [llms.txt](/llms.txt)

---

## 前提：明确目的，建立预期

数据分析的价值与指标体系的搭建见前文，本篇笔记梳理数据分析的一般流程。在正式开始之前，必须明确两个前提：

- **明确目的**：不要为了数据分析而进行数据分析。特别是面对满屏幕的统计指标和数据反馈时，往往越看越乱，这时更要明确目标、抽丝剥茧，从一堆数字里准确找出真正用得着的。说到底，数据分析只是手段，手段服务于目的；不知道分析目的是什么就掏出计算器对着 Excel 忙一下午，到最后也不知道自己在做什么，那就是浪费时间。
- **建立预期**：哪怕没有明确的预期，也得毛估出一个大概——估不出数字区间，起码能估个量级。这个能力要通过大量的练习和实践来训练。有了预期，等结果出来才能进行对比：是令人满意，还是差强人意、有优化提升的空间。

确立好前提，就进入数据分析的一般流程。整个流程分成五个环节：**数据获取、数据清洗、数据分析、验证发现、数据可视化**。

## 第一步：数据获取

数据分析的起点是起码先得有数据。常用来源有五种：

1. **文件下载**：最常见、用得最多的方式。可下载的文件既有公司内部服务器上提供的，也有网上公开的免费报告、统计报表，还包括花钱从咨询公司采购的。
2. **服务器访问日志**：每次请求服务器，都会给服务器的请求日志增加一条记录。可以向服务器管理员申请索要这个记录，其中一堆指标可以作为参考。
3. **交互界面访问**：比如编程时后端用 MySQL 这样的数据库，既可以用命令行方式访问，也有前端的交互界面工具——例如 PHP 的管理工具 phpMyAdmin，提供了 MySQL 的图形化访问界面。
4. **应用程序接口（API）**：比如接了新浪微博，开发程序时就可以通过微博提供的数据接口 API 获取返回的数据，如收发微博的消息等。
5. **技术手段采集**：有些数据并非为外部获取而存在，如果懂一些抓取手段，也可以巧妙获得。比如前两年 O2O 创业很火、人人都去做 O2O 的时候，很多团队倾向于去抓大众点评的数据；做股票财经分析的，则很喜欢抓取雅虎财经的数据。

当然可能还有其他来源，方法很多，主要取决于手头有哪些途径、掌握哪些技术。

## 第二步：数据清洗

数据清洗顾名思义，就是把脏数据洗掉——各种整理、检查、修复，是正式开始分析前的准备工作。只有干净的数据，接下来分析时才能确保结果准确。打个比方：如果数据分析是下厨房做菜，数据清洗就相当于提前准备食材——去皮、去籽、洗干净，该焯水的焯水、该预热的预热，准备工作都完成了，才能真正煎炸烹煮出一道美味佳肴。

常见的清洗对象有六种：

- **缺失值**：比如抓取来一组一百个随机路人的年龄，想统计平均年龄时发现其中一人漏统计、数据是空的。再找个路人替补已经来不及，这时要么去掉空值、统计剩下 99 人的平均年龄，要么想办法补齐——填一个比较合理的、最能减少最终结果误差的数字，比如补上其余 99 人的平均年龄再算均值，误差会小一些。除平均值外，根据实际情况也可以补充中位数、众数等来代替缺失值；这类办法简单，但没有充分考虑数据中已有的信息，误差可能较大。另一种办法是根据调查对象其他问题的答案，通过变量之间的相关分析或逻辑结论来推理预估——比如某产品的拥有情况可能与家庭收入有关，就可以根据家庭收入推算拥有该产品的可能性，再填充缺失值。
- **垃圾信息**：收上来的数据可能包含无效项目。比如发问卷统计一百个小朋友的年龄，有人调皮填了 500 岁，显然是垃圾信息，需要剔除。有时还可以反向利用这一点，故意在调查中设置陷阱：某人在第三题选了 A，第八题换种说法重复问同样的问题他却选了 B，前后矛盾，说明他没有认真客观地答题、可能只是囫囵吞枣乱填，这份调查表就视作无效，从样本数据中剔除。
- **规范化**：比如样本数据里有个字段叫日期，有人填阿拉伯数字 2018.10.10，有人汉字数字混写"二零一八年十月十日"，有人提交的是英文 October tenth, two thousand eighteen。这时就要人工或借助工具，把不同的格式统一规范转换成一样的格式，后续才能统一处理。
- **重复记录**：很好理解，样本里有多的，就酌情删除或合并归类。
- **特殊值**：比如想统计某大学一届毕业生毕业三年的平均月薪，大部分人的收入服从正态分布、大概在一两万上下波动；但假如有一个有能力有背景的小伙子毕业不久就平步青云，工资加奖金月入一百万，他的收入就属于比较极端、特殊的值。直接放进统计会拉高全体毕业生的月薪均值，让结果偏高不准确。对这种特殊值应采取特殊手段取舍，比如直接不纳入统计。
- **合并数据集**：比如做电商产品，手头有两份 Excel 表，一份是一百款产品的销量、另一份是它们的单价，需要根据这两份数据计算总销售额。与其在两个表之间来回跳转、狂按计算器拿销量乘以单价再挨个加总，不如熟练运用 Excel，通过函数把两个数据集合并在一张表上——一列销量、一列单价——直接算出总销售额。合并数据集的价值，是让分散在不同数据表里的数据集中到一起，方便统一处理。

实操中可能还有其他特殊数据，要酌情处理。常用的清洗工具有两类：

- **Excel**：天生为数据而生，有很多现成的函数；如果熟悉 VBA，还可以写脚本和自动化工具，实现一键处理。曾有一位在美国咨询公司工作的分析师，Excel 用得非常熟练：一些其他分析师要花三四个下午才能完成的常用流程，他用 VBA 写了一个函数，每次点一下启动按钮只要二十几秒就全部完成。他很幸运，离开那家咨询公司时，公司还花 20 万美金把他的脚本收购了。
- **编程语言**：常用的有 Python、PHP、R 语言。Python 和 PHP 比较轻量级，第三方开源的库和工具非常多，写起来快；R 语言是专门为数据分析而生的语言，语法很简单，数据分析相关的工具和函数非常强大，可以完成非常复杂的数据分析工作。

## 第三步：数据分析的七种手段

数据清洗完成、原材料准备就绪，接下来就可以运用各种方法进行数据分析。方法手段很多，根据不同场合、不同目的选择最合适的。以下介绍七种常用手段：**画像分群、趋势维度分析、漏斗洞察、行为轨迹分析、留存分析、A/B 测试、优化建模**。

### 1. 画像分群

精细化运营中，常常需要对有某个特定行为的用户组进行分析和比对——比如男女在电商平台上的行为表现完全不一样，游戏里付费氪金的土豪玩家和免费玩家也不一样。这就需要剥离开不同群体单独查看，与分层运营的思路基本一致。增长黑客可以将多维度、多指标作为分群条件，有针对性地优化产品、提升用户体验。

> 例如想优化注册环节，就必须找出某个特定人群在注册环节每一步的表现，以便对特定环节重点优化。维度选择上：选地理位置，筛出北京、上海、深圳、广州等一线城市的主要用户来源；选设备，通过浏览器 Mobile Safari 筛出 iPhone 用户——他们是移动端主力。指标选择上：想看第三步未注册成功的用户行为，就筛选"第二步浏览页面数大于 0"（在第二步产生了浏览行为），同时"第三步页面浏览数等于 0"（第三步没有浏览），即从第二步没能成功转化到第三步。在这个条件设定下，就能准确筛出北上广深 iPhone 浏览器用户中第三步注册未成功的人群，随后深度研究他们的行为来优化第三步。

### 2. 趋势维度分析

如果说画像分群是相对静态的，趋势分析就是动态的。它能迅速呈现市场、用户或产品功能（feature）的基本表现，甚至可用于对未来表现做预测。日常工作中对这种趋势维度的数据分析接触较多，比如经常看的新增用户趋势图，都属于统计一段周期内的变化。观察趋势有助于抓住优化的关键点、提升决策的有效性，给出一个很明确的方向。

> 例如一幅趋势图：从 9 月 30 日到 10 月 6 日，注册和完成注册的用户比例明显下滑——观察到这个信号，就可以检查这段时间网站是否出现了 bug，还是推广渠道错误导致，据此排查原因。再如环比上个周期，注册用户量和登录用户量都大幅上升——就应该总结到底哪些事做对了、能否复制成功经验：是活动做得特别成功，还是选到了很精准的流量渠道。这些异常的数据变化都能直观地从趋势分析图上看出来、引起注意。

### 3. 漏斗洞察

转化漏斗是用户行为的数据化体现，比单纯的数字更直观；对转化率进行优化是增长黑客的核心工作，漏斗分析是最常见的分析手段之一。它按由先到后的顺序还原某一个用户的使用路径，分析每一个转化节点的转化数据——前文谈到的 AARRR 流量漏斗模型，就是一个经典的转化漏斗模型。

> 例如某注册流程整体转化率只有 33.8%，比较低。进一步展开细分漏斗可以发现，是第一步到第二步的转化率过低——7000 多人进来只转化了 3000 多——导致整体表现很不理想。接下来就要在第一步转化的页面花更多精力，研究阻碍用户转化的因素并加以改进。另外从设备维度分析，移动端转化率只有 17.1%，明显低于桌面端，很可能意味着移动端适配做得不够好，于是可以逐层优化移动端的转化漏斗，目测应该从第一页往第二页的优化做起。

### 4. 行为轨迹分析

画像、分群或趋势分析针对的是一群人的群像，是结果数据；针对单独用户的行为轨迹分析，看到的则是一个很细节的过程数据。借助一些分析工具，可以很清晰地看到一个用户究竟在网站上做了什么：先点了哪个按钮、再点了哪个标签、接下来进了哪个页面、观看了多久的视频等。通过他们的行为，可以找到用户最感兴趣的点，或阻力最大的点。根据当前国家相关法律法规，能做的用户轨迹分析大部分是匿名的、保证用户隐私的，各种分析工具平台一般用一个随机 ID 作为用户的身份识别。有了行为轨迹，就可以根据用户的使用习惯来设计产品、投放内容。

> 例如某幅使用网站分析服务 GrowingIO 的用户轨迹图中，可以看到该用户对留存数据特别感兴趣。这是个个例还是用户的共性？需要多去寻找用户轨迹来分析。如果是共性，就证明 GrowingIO 需要强化留存分析的产品功能——因为它最契合用户的兴趣，这就成为指导改进迭代产品的依据。

### 5. 留存分析

留存分析是增长黑客方法论中贯穿始终的分析方法，值得再次单独强调：留存老用户的成本要远远低于获取新用户。做留存分析最常见的还是用户分群，拆分出某个具体渠道或特定着陆页的用户来分析。典型的用户留存数据图中，下方是某个访问日期内用户群体在此后不同间隔对应的留存数字，上方是过去 14 天所有用户次日留存平均值画成的曲线。

> 从图上可以看到，新用户在首次访问后的第二天留存率就大幅降低——是否需要考虑一些办法刻意触发用户的留存行为？比如推送、邮件召回等。而一周之后，用户留存率开始上升直至平稳——可以初步判断：如果能设法让用户使用一周以上，那时还没有失去兴趣的用户，更倾向于留下来长期使用。于是要做的事，就是想办法帮用户度过这段危险期，例如设计一个连续七天签到的奖励，鼓励用户使用一周以上。

### 6. A/B 测试

A/B 测试比较适用于高密度数据的场合，简单说就是数据量要足够大；如果网站每天只有区区三五十个 PV，就提出要做 A/B 测试看怎么优化，其实没什么意义、也不准确。做法是把要测试的对象拆分成 A、B 两组，分别看结果对比，选择最后用哪个。它还有个衍生版本叫**多变量测试**——不是只测试一组变量的两个版本，而是可以一次测试好几个。后续章节会专门展开，此处先看案例：

> 图中是两组 A/B 测试的实际执行数据截图，上面三张是一组、下面三张是另一组，每组最右边一张是对照组（即产品原版本的数据），对应行里的 A 和 B 是进行两种不同试验后的结果。第一行里，A 组结果并没有比对照组更好，而 B 组提升明显——就可以想想 B 组究竟做对了什么，把方案的闪光点应用在原先的产品里。而下面一组实验的 A、B 结果均不太理想、没有比原本的产品数据更好——这种情况下可以继续测试；在没得出比较好的结论之前，先按兵不动，不要乱改。

### 7. 优化建模

这是数据分析中比较高阶、比较有难度的分析手段，放在最后简单介绍。顾名思义，建模就是根据过往数据建立一个模型，模型的价值在于：在特定的适用条件下，它可以用来预测未来——向模型输入什么，它就输出对应的结果。当优化建模与其他数据分析手段结合时，能在商业上产生更多有价值的应用。

> 例如一家按年付费的 SaaS 企业，需要通过一些数据指标加上一套判断依据（即一个分析模型）来评估：哪些客户来年很可能继续续费，哪些逐渐显出疲态、可能会流失。可以根据他们的行为、公司信息、用户画像、使用轨迹等，做一个付费用户的"温度模型"。图例是一款 SaaS 产品基于分析模型算出的客户温度（客户名称用字母代替，右边是对应的温度指数）：所谓温度，就是通过使用情况、反馈情况、活跃率、留存率、拜访时产生的统计数据和采访反馈等，判断哪些是平台优质用户，再通过加权计算得出——越优质的客户温度值越高，几乎无需额外操心，时间到了他们自然很容易续费；而表里越靠后、温度越低的客户，越需要主动建立关联、去关怀和"温暖"他们，把温度值提上来。整个表的生成，靠的就是一套严密的优化建模。每家公司会设置自己的指标体系，也有专门的数据分析师负责构建模型并监测结果。

## 第四步：验证发现——警惕三类谬误

进行一系列数据分析后会得到一些初步结论，但这些结论是否正确靠谱，需要想办法用科学的方法进行验证，检验当初的数据是否准确无误地反映了客观事实、是否存在思维漏洞或考虑不完善的情况——这对分析者的逻辑思维要求相当高。数据虽然不会说谎，但人在对数据进行分析和验证时，会因为主观原因对数据产生误读、发生各种谬误。有三个流传甚广的"一句话笑话"：

- 自 1930 年至今近一个世纪的世界杯历史中，还没有任何一支亚洲球队能在世界杯上战胜中国队；即使是巴西队这样的世界强队，也仅战胜过中国队一次。
- 经过统计，美女配丑男的概率远大于美女配帅哥，所以要追女神的话，先把自己弄成丑男，成功率会大一些。
- 研究表明，过生日的次数越多，人的寿命越长。

会心一笑之余不难发现，它们的共同之处是：对看似客观真实的统计数据进行了误读，导致啼笑皆非的结论。曾两度出任英国首相的本杰明·迪斯雷利有句名言："世界上有三种谎言：谎言、该死的谎言，还有统计数据。"实际生活中，大量统计数据由于主客观原因被有意或无意地滥用误读，不仅无法清晰描述和传递信息，反而阻碍信息传递、误导接收者。如果拿到正确的数据，却因分析验证方法有问题导出完全相反的结论、最终误了事，那就很糟糕了。以下是三个很有代表性的谬误。

### 1. 虚假相关

> 有人做过一张图：1999 年到 2009 年期间，美国掉进游泳池里淹死的人数，与同一周期内美国影星尼古拉斯·凯奇出演电影的数量，两条曲线的趋势惊人相似。由此能否得出"凯奇是恶魔的使者，一拍电影就有人淹死，所以防止泳池溺水的方法就是彻底封杀凯奇"的结论？显然很荒谬——二者本来没什么联系，这只是一个很偶然的巧合。

另一个案例：统计研究发现，冰激凌销量最高的时候，正是公共游泳池溺水事故发生频率最高的时候。如果由此推断"溺水的发生促进了冰激凌的销售"，显然是错误的——导致这一情况的直接原因是：冰激凌的销售和公共泳池的开放都在夏天，是"夏天的到来"这一个因素引发了二者共同发生，而不是这二者之间谁引发了谁。类似的还有"棍棒底下出孝子""天天打游戏人就会变笨""每天上网六小时的人是因为得了网瘾要接受电击治疗"等原本并不存在必然因果关系的叙述。不仔细斟酌，很容易受这种虚假相关的蒙蔽。

### 2. 因果倒置

任何两件事情形成因果关系，需同时满足两个条件：一方必然引起另一方的发生；二者在时间上有先行后续的关系。"拥有自己独立办公大楼的公司更容易成功"就是典型的因果倒置——不是拥有独立办公大楼的公司容易获得成功，而是成功的公司才买得起自己的办公大楼。再如"坐轮椅很危险，因为大部分坐轮椅的人都遭遇过车祸"也是奇谈怪论——究其原因，是出了车祸的人大多数需要坐轮椅。这类逻辑漏洞在于错把原因说成结果、忽略了事情发生的先后顺序。

### 3. 沉默数据

> 经典案例：二战的时候，英国为降低战斗机的损失，要给机身增加装甲，但预算有限，于是决定把装甲安装在最容易受到攻击的部位。对受损战斗机的统计分析发现，大多数弹孔分布在机翼上，占 26%，于是他们在机翼上加装装甲，结果并没有收获预想的理想效果。后来有人重新研究发现：真正应该加固的不是机翼，而是驾驶舱——因为那些真正被射中驾驶舱的飞机，几乎都没能飞回来、没能加入统计队列；而驾驶舱中弹却侥幸返航的飞机，只占当初统计中弹部位飞机的 7%，远低于机翼的 26%。这就是所谓的"死人不会说话"。网上有人智慧地总结：统计数据就像比基尼——暴露出的那部分固然重要，但没暴露出的那部分才更加致命。

分析数据时，人们容易把注意力集中在可见的数字或事物本身（因为它们相对容易获取），而忽略了那些"不会发出声音"的部分，尽管它们很可能同样对结果造成重要影响。再如：实验显示"连续抛硬币获得正面的可能性是 66.6%"——得出这样与常识相违的结论，是因为省略了"总共只抛了三次硬币"这一限定条件；某地区从五年前起，每年为约 500 名新生儿接种新研发的小儿麻痹疫苗，此后该地区未见一例小儿麻痹发病纪录，看上去新疫苗很有成效、值得推广——却忽略了前提：小儿麻痹症的发病率本身就不到十万分之一。有时数据提供者为了误导读者，会刻意隐藏一些信息，需要仔细甄别、防止上当。

归根到底，数据本身不会说谎，而是人们在收集、整理、归纳、解读数据的过程中产生了各种问题。只有善用正确的思维方式去使用数据，才能让数据为决策服务，而不至于跌入陷阱。

## 第五步：数据可视化与延伸阅读

为什么进行数据可视化？因为人都是爱读图的动物，人们对图像的接受反应速度是文字的 60 万倍——这主要与人脑的构造有关：右脑图像脑比左脑逻辑脑的信息流入速度更快。数据可视化就是利用人脑这一机制，把枯燥晦涩的数字转换成更加清晰易读的图像，帮助理解、分析，以及向他人汇报传达。为了有效传达思想概念，美学形式与功能需要齐头并进，通过直观的传达，实现对相当稀疏而复杂的数据集的深入洞察。

可视化不能为了看上去绚丽多彩而做得很复杂。现在有些数据分析师本末倒置，不能很好地把握设计与功能之间的平衡，创造出华而不实的可视化形式，无法达到传达信息的主要目的，反而让人无法聚焦、关注点偏移。另外，科技在进步、社会在发展，数据可视化也应适应时代的需求：除了在数据和数据展示上下足功夫，还要强调应用性和操作的人性化，不要有太高的学习门槛，让技术人员之外更多的业务人员也能了解数据平台和数据可视化。

常见的形式有：

- **Excel 统计图**：日常工作中最常接触，操作成本较低；但问题是相对单调，输出的统计图也不够美观。想制作精美的汇报材料，用 Excel 要花点功夫，所以很多人用 Excel 做数据分析，再用其他第三方工具绘图。
- **信息图**：更进一步是绘制更有设计感的信息图，目的在于用图像的形式表现需要传达的数据信息和知识。图形可能由信息所代表的事物或相关事物的抽象图标、图像组成，也可能是点线面等基本图形，或手动绘制几个 icon。信息图中的元素未必与所表达的信息在语义上一致，但必须达到向受众清晰传达正确信息的标准。把历史或日常生活中常见现象做统计分析再输出图片，配上鲜艳的色彩，能让人更好地摄入信息——人对颜色很敏感，彩色鲜亮的信息容易让人印象深刻。
- **思维导图**：将信息、数据图像化的常见手段。日本有位叫七田真的研究者专门研究过思维导图，还写过一些著作，感兴趣者可以查阅。
- **实时报告图**：比如天猫双十一全球狂欢节时阿里巴巴内部的数据统计大屏——每年双十一全体员工镇守阿里总部，对着大屏幕实时显示今天多少人参与购物、实时成交额是多少，数字每年还在攀升；数据统计维度更多、数据量更大、图也做得更精美。又如腾讯 QQ 的同时在线人数，官网提供了入口可以点进去看：全中国星罗棋布、多点开花，风靡大江南北。
- **交互数据图**：在网页里用前端手段实现丰富的操作——拖拽拉伸、隐藏浮层、判断鼠标悬停的位置等，通过各种鼠标操作和交互来窥探想查看的数据细节。百度地图其实就是一个交互数据图：缩放某个城市、聚焦某条街道、点击某个建筑就能看到地址、电话等数据，还可以切换图层查看不同的地图模式（如旅游地图），点选两个地方测试距离。
- **视频**：2011 年旧金山一个共享单车开放数据公开赛的获奖作品里就有这样的例子：一位获奖者把骑共享单车的各种数据（时间、距离、速度等）拍成一个生活化的短片，展示他一天当中怎么骑共享单车，用视频字幕与画面的配合让数据更生动，也得了创意奖。

说到底，数据可视化的手段丰富多样，但归根到底形式要服务于目的，也得考虑性价比：具体呈现时要综合考虑信息传达的效率、美观度和制作成本，选择最合适的方式。

最后推荐几本数据分析的书，可以根据自己的能力阶段和兴趣选择——数据分析本身是一门精深的学问，不可能靠几个小时速成，修行还是要靠个人：

- **《精益数据分析》**：笔者很喜欢的一本书，讲一个产品该怎么进行数据分析、应该怎么设立指标、应该看哪些数据；不同类型的产品（比如移动游戏、SaaS 产品）可以监控哪些指标，有哪些比较好的行业参照。
- **《统计数字会撒谎》**：针对上面讲的那些谬误——怎么识别、怎么判断，有哪些常见经典的"数字撒谎"谬误。这本书用很多丰富的案例，帮读者用科学的逻辑武装头脑，避免在看数据、分析数据的过程中产生失误。
- **《深入浅出数据分析》**：Head First（深入浅出）系列。这本书挺厚，但每页信息量不大、图文并茂以图片为主，很多概念其实很简单，可以翻得很快；寓教于乐，算是数据分析很好的入门书。
- **《数据化管理：洞悉零售及电子商务运营》**：从副标题可以看出，从事零售或电子商务相关工作的读者能从中获得很垂直的指导。
- **《利用 Python 进行数据分析》**：适合有些编程功底、熟练使用 Python、想通过它进行数据分析的读者，这本书在一些函数及相关库的推荐上有很多有意思的启发，可以看一看。
