探索性数据分析

“面对那些我们坚信存在或不存在的事物时,“探索性数据分析”代表了一种态
度,一种方法手段的灵活性,更代表了人们寻求真相的强烈愿望。”
—— John Tukey

探索性数据分析经常表现为画一些直方图或者茎叶图,小学五年级都开始教这些知识了,
因此探索性数据分析看起来只是小菜一碟,不是吗?这也就难怪没人把它当回事了。
然而探索性数据分析是数据科学中的重要一环,同时代表了来自贝尔实验室的一批统计学
家在从事数据科学工作时所采用的方法和观点。
John Tukey 是贝尔实验室的数学家,他开发出有别于验证性数据分析的探索性数据分析,
如上节所述,验证性数据分析偏重于模型和假设。在探索性数据分析中,没有假设,也没
有模型。这里的“探索性”是指你对待解问题的理解会随着研究的深入不断变化的。

探索性数据分析的基本工具是图、表和汇总统计量。一般来说,探索性数据分析是一种系
统性分析数据的方法,它展示了所有变量的分布情况(利用盒形图)、时间序列数据和变
换变量,利用散点矩阵图展示了变量两两之间的关系,并且得到了所有的汇总统计量。换
句话说,就是要计算均值、最小值、最大值、上下四分位数和确定异常值。

探索性数据分析不仅是一组工具,更是一种思维方式:要怎么看待和数据之间的关系。你
想理解数据,了解数据的形状,获得对数据的直观感受,想将数据和你对产生数据的过程
的理解关联起来。探索性数据分析是你和数据之间的桥梁,它不向任何人证明什么。

 

探索性数据分析的哲学

“与其担心如何说服别人,不如先了解到底发生了什么。”
—— Andrew Gelman

在谷歌期间,Rachel 有幸与前贝尔实验室的两位统计学家,Daryl Pregibon 和Diane
Lambert 共事,他们都是应用统计学领域的专家。正是从他们身上,Rachel 学会了将探索
性数据分析作为她的最佳实践之一。
是的,即使面对谷歌级别的大体量的数据,他们依然进行探索性数据分析。在互联网企业
中,基于和处理小数据同样的原因,探索性数据分析经常被用到,在处理日志数据时,有
更多的理由使用探索性数据分析。

使用探索性数据分析有很多重要的原因。包括获取对数据的直觉、比较变量的分布、对数
据进行检查(确保数据的规模在你预期范围内,数据的格式是你想要的等)、发现数据中
的缺失值和异常值、对数据进行总结。
对于在日志中生成的数据,探索性数据分析可以用于调试记录日志的流程。比如,你通过
统计日志数据发现的一些“模式”,很可能其实是由于日志记录流程中出错造成的,因此
这些错误亟待修复。如果你怕麻烦从不去调试,你可能会一直认为这些模式是真实存在
的。最后,探索性数据分析确保了产品的性能符合预期。

在探索性数据分析中会引入许多图形,但是我们有必要在这里对探索性分析和数据可视化
加以区分。探索性数据分析是数据分析的开端,而数据可视化(将会在第9 章介绍)是在
数据分析的最后一个环节,用于呈现数据分析的结论。在探索性数据分析中,图形只是帮
助你理解数据。
在探索性数据分析中,可以根据对数据的理解优化算法。比如,你正在开发一种排名算
法,该算法对你推荐给用户的内容进行排名。为此,你可能需要定义什么是“流行度”。
在决定以何种方式量化“流行度”之前(可行的量化方式有最高的点击率、最多的回复
率、大于某一阈值的回复量或者众多指标的加权平均值),你需要先了解数据的运作表现,
而做这件事最好方式就是观察你的数据,亲自去实践。
根据数据绘图,并进行比较,这些将会收到意想不到的效果。相比于拿到数据集后、不管
三七二十一就运行一个回归模型,这种方法效果要好得多。你之所以选择回归模型,只是
因为你知道它怎么用。对分析师和数据科学家来说,在处理数据时,若没有将探索性数据
分析视为重要一环纳入到整个研究过程中,这对研究结果极为不利。给自己个机会,把探
索性数据分析作为你的数据分析工作流程中的一部分吧!