Tableau中的普通计算是把数据发送给数据源端进行计算,而表计算是在已经取得的查询结果基础上由Tableau做的进一步计算,即在结果表格里进行计算。Tableau中常见的表计算类型主要有:差异、百分比差异、合计百分比、排序、百分位、汇总及移动计算。为了方面对各个表计算类型进行介绍,将会在如下的查询结果上进行表计算并观察结果。
1. 差异和百分比差异
Tableau表计算中的差异表计算会计算数据之间的绝对变化。假设现在需要统计每个子产品在相对上一年度的销售额变化,就可以直接在【总和(销售额)】上进行“差异”表计算(具体设置结果就不截图了),其结果如下(2016列的结果为2016年的销售额减去2015年的销售额,2017列的结果为2017年的销售额减去2016年的销售额,依此类推):
此时如果需要统计各个子产品在各个年度相对于2015年的销售额变化,此时只需要将基于“上一个”值的表计算改为基于“第一个”值的表计算,具体如下:
此时,计算结果为:
Tableau中的百分比差异表计算结果会计算变化百分比。假如现在要统计各个子产品相比前一年的销售额增长比例,就可以使用百分比差异表计算。具体计算结果如下(2016列=(2016年销售额-2015年销售额)/2015年销售额,依此类推):
2.汇总
Tableau中的汇总表计算除了支持“总和”之外,还支持“平均值”、“最小值”、“最大值”汇总。
以“总和”汇总为例,此时表计算结果如下,其结果为各个子产品从 2015年至今的销售额累计总和。
3.排序和百分位
Tableau中的排序表计算会以数字的形式对数值进行排序。现在将销售额的表计算设置为排序,可以看到如下结果:
Tableau中提供的排序类型主要有以下几种:
而百分位表计算和排序表计算有些类似,只是将排序结果转化为了百分比。具体如下:
4.移动计算
使用Tableau中的移动计算表计算除了要指定汇总计算类型外,还需要指定计算窗口。移动计算中支持的汇总计算类型有:总和、平均值、最大值和最小值。具体如下:
而计算窗口是指以当前值为基准往前往后的多个数值,汇总计算会在计算窗口内进行(汇总表计算的计算窗口是确定的,无法调整)。具体应用如下(如果不希望当前值加入计算,则不勾选当前值;如果计算窗口里数值个数不符合要求,则直接返回空值):
此时的表计算结果为(2015列为2015到2016年度销售额均值,2016列为2015到2017年度的销售额均值):
5.合计百分比
Tableau中的合计百分比表计算会统计各个部分所占的比例。假如需要统计每一年度各个子产品的销售额占比,则可以对销售额使用合集百分比表计算,但同时需要将表计算依据改为“表向下”。具体计算结果为(每一列的总和为100%):
6.嵌套表计算
Tableau中嵌套表计算是在表计算结果的基础上,再做一次表计算。假如在上述移动计算的结果上再做一层差异表计算,此时的表计算编辑界面如下:
其结果如下:
从试验结果可以看出,主要计算类型为第一层表计算,从属计算类型为第二层表计算。