Tableau 中的计算类型

本文介绍了您可以在 Tableau 中使用的计算类型。您将了解每个计算和计算方法之间的区别。

可以使用以下三种主要类型的计算在 Tableau 中创建计算字段:

基本表达式

基本表达式允许您在数据源详细信息级别(行级别计算)或可视化项详细信息级别(聚合计算)转换值或成员。

例如,请考虑下面的示例表,其中包含两个奇幻片的作者和他们的书籍的数据。也许您想创建一个只有作者姓氏的列,以及一个显示每个系列中有多少本书的列。

书籍 ID 书籍名称 系列 发行年份 作者
1 《狮子、女巫和衣橱》 纳尼亚传奇 1950 C.S.Lewis
2 《凯斯宾王子:重返纳尼亚》 纳尼亚传奇 1951 C.S.Lewis
3 《黎明踏浪号》 纳尼亚传奇 1952 C.S.Lewis
4 《银椅》 纳尼亚传奇 1953 C.S.Lewis
5 《奇幻马和传说》 纳尼亚传奇 1954 C.S.Lewis
6 《魔法师的外甥》 纳尼亚传奇 1955 C.S.Lewis
7 《最后的战役》 纳尼亚传奇 1956 C.S.Lewis
8 《森林的女儿》 Sevenwaters 1999 Juliet Marillier
9 《阴影之子》 Sevenwaters 2000 Juliet Marillier
10 《预言之子》 Sevenwaters 2001 Juliet Marillier
11 《七水之继承人》 Sevenwaters 2008 Juliet Marillier
12 《七水之先知》 Sevenwaters 2010 Juliet Marillier
13 《七水之火》 Sevenwaters 2012 Juliet Marillier

行级计算

若要创建一个显示数据源中每行的作者姓氏的列,可以使用以下在空格上拆分的行级别计算:

SPLIT([Author], '', 2 )

可以在下面看到结果。标题为“作者姓氏”的新列显示在最右侧。颜色显示了执行计算的详细级别。在本例中,计算是在数据源的行级别执行的,因此每个行都单独着色。

书籍 ID 书籍名称 系列 发行年份 作者 作者姓氏
1 《狮子、女巫和衣橱》 纳尼亚传奇 1950 C.S.Lewis Lewis
2 《凯斯宾王子:重返纳尼亚》 纳尼亚传奇 1951 C.S.Lewis Lewis
3 《黎明踏浪号》 纳尼亚传奇 1952 C.S.Lewis Lewis
4 《银椅》 纳尼亚传奇 1953 C.S.Lewis Lewis
5 《奇幻马和传说》 纳尼亚传奇 1954 C.S.Lewis Lewis
6 《魔法师的外甥》 纳尼亚传奇 1955 C.S.Lewis Lewis
7 《最后的战役》 纳尼亚传奇 1956 C.S.Lewis Lewis
8 《森林的女儿》 Sevenwaters 1999 Juliet Marillier Marillier
9 《阴影之子》 Sevenwaters 2000 Juliet Marillier Marillier
10 《预言之子》 Sevenwaters 2001 Juliet Marillier Marillier
11 《七水之继承人》 Sevenwaters 2008 Juliet Marillier Marillier
12 《七水之先知》 Sevenwaters 2010 Juliet Marillier Marillier
13 《七水之火》 Sevenwaters 2012 Juliet Marillier Marillier

聚合计算

要创建一个列来显示每个系列中有多少本图书,可以使用以下聚合计算:

COUNT([Series])

可以在下面看到结果。标题为“系列丛书数量 - 在系列详细级别”的新列介绍了如何在视图的系列详细级别执行该计算。颜色帮助显示了执行计算所在的详细级别。

系列 系列丛书数量 - 在系列详细级别
纳尼亚传奇 7
纳尼亚传奇
纳尼亚传奇
纳尼亚传奇
纳尼亚传奇
纳尼亚传奇
纳尼亚传奇
Sevenwaters 6
Sevenwaters
Sevenwaters
Sevenwaters
Sevenwaters
Sevenwaters

在 Tableau 中,数据如下所示:

但是,如果拖动“书籍 ID”(这是一个更精细的字段),则计算会根据该新粒度进行更新,因为会在可视化项详细级别执行聚合计算。

详细级别 (LOD) 表达式

就像基本表达式一样,LOD 表达式允许您在数据源级别和可视化项级别计算值。但是,LOD 表达式可以让您更好地控制要计算的粒度级别。它们可以在较高粒度级别(包括)、较低粒度级别(排除)或完全独立级别(固定)执行。

有关详细信息,请参见在 Tableau 中创建详细级别表达式(链接在新窗口中打开)

例如,考虑与上面相同的示例表。如果您想计算书籍系列的启动时间,则可以使用以下 LOD 表达式:

{ FIXED [Series]:(MIN([Year Released]))}

可以在下面看到结果。标题为“系列启动时间”的新列显示了每个系列的最早年份。颜色帮助显示了应用计算所在的详细级别。

书籍 ID 书籍名称 系列 发行年份 作者 系列启动时间
1 《狮子、女巫和衣橱》 纳尼亚传奇 1950 C.S.Lewis 1950
2 《凯斯宾王子:重返纳尼亚》 纳尼亚传奇 1951 C.S.Lewis 1950
3 《黎明踏浪号》 纳尼亚传奇 1952 C.S.Lewis 1950
4 《银椅》 纳尼亚传奇 1953 C.S.Lewis 1950
5 《奇幻马和传说》 纳尼亚传奇 1954 C.S.Lewis 1950
6 《魔法师的外甥》 纳尼亚传奇 1955 C.S.Lewis 1950
7 《最后的战役》 纳尼亚传奇 1956 C.S.Lewis 1950
8 《森林的女儿》 Sevenwaters 1999 Juliet Marillier 1999
9 《阴影之子》 Sevenwaters 2000 Juliet Marillier 1999
10 《预言之子》 Sevenwaters 2001 Juliet Marillier 1999
11 《七水之继承人》 Sevenwaters 2008 Juliet Marillier 1999
12 《七水之先知》 Sevenwaters 2010 Juliet Marillier 1999
13 《七水之火》 Sevenwaters 2012 Juliet Marillier 1999

在 Tableau 中,由于使用了 FIXED 函数,因此计算保持在系列详细级别。

为《纳尼亚传奇》显示日期 1950 并为《七水》显示日期 1999 的可视化项

如果向视图添加另一个字段(这会增大粒度),则与聚合计算不同,计算值不会受到影响。

为所有《纳尼亚》图书重复显示 1950 年日期并为所有《七水》图书重复显示 1999 年日期的可视化项

表计算

表计算仅允许您在可视化项详细级别转换值。

有关详细信息,请参见使用表计算转换值(链接在新窗口中打开)

例如,考虑与上面相同的示例表。如果您想要计算自作者发布上一本书以来的年数,则可以使用以下表计算:

ATTR([Year Released]) - LOOKUP(ATTR([Year Released]), -1)

结果如下所示。标题为“自上一本书以来的年数”的新列显示了该行中发行的书与上一行(列的最右侧)中发行的书之间的年数,并(在列的左侧)演示了如何计算表计算。

颜色有助于演示表计算如何运算。在本例中,系统按每个窗格进行表计算。

注意:根据表计算以及如何在整个表中进行计算,结果可能会有所不同。有关详细信息,请参见使用表计算转换值(链接在新窗口中打开)

书籍 ID 书籍名称 系列 发行年份 作者  自上一本书以来的年数
1 《狮子、女巫和衣橱》 纳尼亚传奇 1950 C.S.Lewis Null  
2 《凯斯宾王子:重返纳尼亚》 纳尼亚传奇 1951 C.S.Lewis 1951- 1950 1
3 《黎明踏浪号》 纳尼亚传奇 1952 C.S.Lewis 1952- 1951 1
4 《银椅》 纳尼亚传奇 1953 C.S.Lewis 1953- 1952 1
5 《奇幻马和传说》 纳尼亚传奇 1954 C.S.Lewis 1954- 1953 1
6 《魔法师的外甥》 纳尼亚传奇 1955 C.S.Lewis 1955- 1954 1
7 《最后的战役》 纳尼亚传奇 1956 C.S.Lewis 1956- 1955 1
8 《森林的女儿》 Sevenwaters 1999 Juliet Marillier Null  
9 《阴影之子》 Sevenwaters 2000 Juliet Marillier 2000- 1999 1
10 《预言之子》 Sevenwaters 2001 Juliet Marillier 2001- 2000 1
11 《七水之继承人》 Sevenwaters 2008 Juliet Marillier 2008- 2001 7
12 《七水之先知》 Sevenwaters 2010 Juliet Marillier 2010- 2008 2
13 《七水之火》 Sevenwaters 2012 Juliet Marillier 2012- 2010 2

在 Tableau 中,数据如下所示:

为每本书显示自上一本书以来的正确年份的可视化项

但是,如果以影响布局的方式更改可视化项,例如从视图中移除维度,则计算值会发生变化。

例如,在以下图像中,从可视化项中移除了“作者”。由于表计算是按窗格计算的,因此移除“作者”会更改可视化项的粒度和布局(这里只有一个窗格,而不是两个窗格)。因此,表计算会计算介于 1956 年到 1999 年之间的时间。

为《七水》图书显示自上一本书以来的不正确年份的可视化项


继续选择正确的计算类型

另请参见

了解 Tableau 中的计算(链接在新窗口中打开)

关于了解如何创建计算的提示(链接在新窗口中打开)


感谢您的反馈!