编辑快速表计算
如何进入编辑表计算的界面
在创建完快速表计算之后, 点击三角形的下拉箭头, 你就会看到一个选项叫做Edit Table Calculation.
在Edit Table Calculation的上边还有一个选项叫做Compute Using. 我会在接下来解释这两个选项
准备工作
为了能够更好的理解编辑表计算里的各种概念, 我们需要在之前所使用的那个简单的案例上进一步发展, 创建一个更复杂的表格. 在下边的这个截图当中, 是一个非常基本的Total Sales by Year by Region的表格. 我现在开始在这个基础上创建一个更复杂的表格.
接下来请选中Quick Table Calculation当中的Running Total. 然后你就会得到左边的这个截图
表计算中的方向: Down and Across
为了方便你理解, 我把原始数据放在左边, 把running total放在右边. 这个时候我要问你, 右边的这个running total里每一个数字是怎么算出来的?
范围概念: Table和Pane
揭晓答案
接下来, 我们在Region的后边添加State/Province, 我们左边的Column就会变成两个. 第一层最外围的是Region: Central. 在第二层Region后边的是State/Province. 与Excel不同的是. Central并没有出现在每一行, 而是在所有属于Central Region的State左边, Central只出现了一次. 这样的好处是你可以非常清晰的看到哪些State是在Central这个Region中的.
在上边的基础上, 我其实还可以在左边继续加Dimension.
我们现在看左边的截图. 在Region的左侧我又加上了Country/Region这一列. 这样我们的表格情况就更复杂了.
Canada可以对应三个区域: Central, East和West. 而每个区域下边又对应着不同的省. 就这样一层一层的扩散开来.
到这里我们就已经又一个相对复杂的表格了. 如果我们想让表格更加复杂, 我们还可以在Year(Order Date)下边再加上一个Month. 这样的话不仅在数据的左侧我们有三层结构, 在数据上边我们还有两层.
为了方便展示. 我在表格中仅保存加拿大的数据. 这样一个截图就能够完整显示加拿大的所有销售额
这里的问题没有那么复杂, 所有右边的running total都是遵循着从左到右叠加的方法计算出来的.
我们看第一行的最后一个数字1930.78, 它是左侧1175.31加上755.47的结果
接下来我们看第二行
从左边第二个112.85. 它等于56.42加上56.42. 第三个169.27, 它等于56.42+56.42+56.42
只要从左加到右就行了.
这里就看出了这次的Table Calculation与我们前边举过的例子不一样的地方了, 它的方向从一开始从上到下变成了现在的从左到右
这种从左到右的计算方向叫做Across. 而之前我们学过的从上到下的计算方向叫做Down
在我讲解Table和Pane这两个概念之前. 我们先来看两组对比图
这两组对比图的左边都是原始数据, 也就是没有在变成Table Calculation之前的原始状态. 而右边同样是Running Total. 但是所使用的计算方法不同. 两者这次都是从上到下. 第一个练习, 比较上下两组截图, 你能否解释
State: British Columbia的2022年Running Total Sales. 上边的截图显示是2460.52 而下边的截图里显示的是1721.16. 这两者为什么不一样? 它们分别是怎么算出来的呢?
思考时间 🤔
…
…
…
…
…
…
…
在右边的截图里, 我分别框出了2460.52和1721.16 这两个数值的背后是哪些数据的总和. 上边的截图是从整个表格的第一行开始叠加, 而下边的截图是从整个West区域的第一行开始叠加. 这里就出现了我们定义Table Calculation的第二个概念范围.
Table翻译过来就是表格, 它所代表着我们所有的数据放在一起所组成的这个最外围的大表格. 而Pane是窗格的意思. 我先给你放张照片
在英语当中, Pane 通常指窗格的意思. 你看左边的这个照片. 如果说整个窗户我们管它叫做Table的话. 那么每个小的部分就是Pane.
如果我们用同样的视角再次去审视我们的表格, 我们就可以像左边一样把我们的表格切割成一个个小的Pane.
而之前1721.16 这个结果就刚好是在这个小的Pane里边进行Running Total计算的结果
Cell
在前边我们讲完了Table和Pane之后,接下来就来到了最小的单位 Cell. Cell这个词在Excel里最常用,它就是单元格. 在Tableau中, 每个数字所占的那么一小块空间就叫做Cell.
左边的这个截图里, 红框所包围的区域就是一个cell. 如果你说我在一个cell的范围里计算running sum. 那么一个小cell里边没有别的数了,它显示的就是原始的计算结果
编辑Running Total
在理解了范围和方向这两个表计算的重要概念之后. 我们现在可以来到表计算的编辑界面了. 首先让我们调出表计算的编辑界面

在打开这个编辑页面之后, 我们就会发现前边讲的名词都出现在了Compute Using下边的这些选项中
我们从上往下看.
第一项是Calculation Type. 除了Running Total之外, 我们之前看到的其他种类的Table Calculation都出现在选项中.
第二项Sum那里我会管它叫计算类型的衍生选项或者说叫兄弟选项. 以running total为例, 我们除了Sum, 还有Average, Max, Min 等等计算. 这就代表着你除了计算Total, 还可以计算Running Average. 我在这里解释一下, Running Max或者说Running Min它所代表的是当你计算这一行的时候, 截止到这一行, 所有值当中的最大值或者是最小值
第三项: Compute Using
计算所使用的方向
Compute Using
Compute Using其实就是计算范围加上计算方向的各种排列组合. 我们可以从上到下(Down), 从左到右(Across) , 还可以先从上到下再从左到右也就是Down then across. 还可以先从左到右再从上到下Across then down.
下面我们看看Across then down的例子. 在下边的这个截图里, 我们的计算顺序就是Table Across then Down. 这个计算的顺序你可以理解为像阅读一样, 从第一行开始从左到右逐渐叠加.到了第二行, 首先承接第一行的最右边的那个结果, 从第二行开始继续叠加. 我们可以看到在整个Table, 每一行的右边总比左边大, 每一行的下边总比上边大. 当来到最后一行的最右边的时候, 这个就是整个表格里的最大值, 其实也是整个表格里数值的总和
写到这里, 你已经掌握了Table Calculation当中最重要的几个概念. 计算类型, 计算的方向和计算的范围. 但是我在这一节课里并没有把每一个计算类型的每一种可能都讲完. 一方面是万变不离其宗, 你只要掌握了这几个核心概念, 自己尝试着创建几个就能明白计算的发生过程. 另一方面就是其实有的时候Table Calculation过于复杂的计算应用的不多. 你可以在真正用到的时候, 按照这种实验的方法当场试试就能知道自己该用哪种选项