1.1 传统Excel数据透视表的能力与局限
本书所说的传统Excel数据透视表,是指在Power Pivot出现之前,我们经常使用的Excel数据透视表(Pivot Table)。无论是传统Excel数据透视表Pivot Table,还是超级数据透视表Power Pivot,它们都能够批量、快速地对大量数据进行多维度汇总计算,从而使我们能够从各个视角对数据进行观察和分析。这里的“从各个视角”,就是数据透视表中“透视”二字的来历。下面讲解传统Excel数据透视表在数据分析方面的能力和局限。
1.1.1 传统Excel数据透视表的能力
下图是传统Excel数据透视表的典型外观,该数据透视表的数据源为一个假想的小型书店的销售数据。该数据透视表将该书店销售的图书按照图书子类和图书封面颜色进行分组,得到了各个组合中图书销售的总册数。在下图中,我们将图书子类(11机械、12电子、13网络等)和图书封面颜色(橙、赤、黄等)分别称为数据透视表的“行标题”和“列标题”。
在数据透视表中,根据数据分析的需求,当将光标置于数据透视表中的任意单元格时,可以从Excel工作表界面右侧的“数据透视表字段”视图中拖曳数据源中任意字段到数据透视表相应区域,从而动态、快速地改变数据透视表的布局结构,并且立即得到变化后的数据分析结果。
我们从Excel工作表界面右侧的“数据透视表字段”视图中可以看到,在数据透视表中,我们可以放置数据源字段的区域有以下几个:1.筛选区(筛选)、2.行标题区域(行)、3.列标题区域(列)、4.值区域(值)。“数据透视表字段”视图中的这些区域分别对应着数据透视表的不同部分。
这里需要说明的是,在数据透视表中,“行标题”和“列标题”也可以称作“行标签”和“列标签”。在本书中,我们使用“行标题”和“列标题”,作者感觉这样的称呼更贴切。
传统Excel数据透视表除了具有上述常见区域,还可以添加看起来“高大上”的切片器控件和日程表控件。下图是添加了切片器控件和日程表控件的数据透视表。为了更加直观地了解数据透视表的整体布局,我们给数据透视表的每个区域都标记了相应的名称。在下图中,我们对数据透视表布局做了一些更改,将数据透视表列标题改成了图书的原始单价。
接下来,我们重点关注一下数据透视表值区域,如下图所示。数据透视表值区域的本质是数据透视表汇总结果的呈现区。在数据透视表值区域中,不但能够快速地对数字字段进行默认求和操作,还可以通过改变数据透视表“值字段设置”对话框中的“值汇总方式”,对数据源中指定的字段进行计数、计算平均值、计算最大值、计算最小值、计算方差等批量汇总操作。
在传统Excel数据透视表中,除了前面提到的各种常见的汇总方式,还可以通过设置数据透视表“值字段设置”对话框中的“值显示方式”,从而在值区域中得到针对某特定字段的差异、差异百分比等较为复杂的汇总结果,甚至可以在传统Excel数据透视表中增加更加灵活的计算字段或计算项等自定义计算内容。
在一般情况下,如果拖曳至数据透视表值区域中的字段是数字类型数据,那么数据透视表默认的汇总方式是求和;如果拖曳至数据透视表值区域中的字段是文本类型,那么数据透视表的汇总方式变成了计算“在满足当前数据透视表布局限制下的”数据源中数据行数的统计(也就是所谓的“计数”)。
综上可知,在传统的Excel数据透视表中,我们不但可以快速地变换数据透视表的布局,还可以快速地改变数据透视表值区域中指定字段的数据汇总方式。这样看来,传统Excel数据透视表的功能似乎已经足够强大,那为什么还要搞出一个Power Pivot,即超级数据透视表呢?请看1.1.2节。
1.1.2 传统Excel数据透视表的局限
尽管传统Excel数据透视表提供了各种灵活的数据汇总方式,但这些数据汇总方式大多是在Excel数据透视表中预置好的,我们只能在已有的数据汇总方式中选择,却不能对这些已有的数据汇总方式进行自定义修改和补充,这就是传统Excel数据透视表的最大局限。
我们知道,Excel数据透视表是用于汇总数据的,而用户对数据的汇总方式往往是千变万化、难以预测的,如果Excel数据透视表不能满足我们这个需求,则永远是它的一个硬伤。
接下来,我们将列举几个场景来介绍传统Excel数据透视表在功能上的不足,以及为什么Power Pivot,即超级数据透视表终将“革”了传统Excel数据透视表的“命”。