Tableau 中的数据聚合
在 Tableau 中,您可以聚合度量或维度,尽管对度量进行聚合更为常见。每当您向视图中添加度量时,默认情况下都会向该度量应用一个聚合。应用的聚合类型因视图上下文而异。
更改视图中的度量聚合
向视图中添加度量时,Tableau 会自动对它的值进行聚合。常见的聚合包括总和、平均值和中值;有关完整列表,请参见Tableau 中预定义聚合的列表。
当前聚合在视图中显示为度量名称的一部分。例如,“Sales”会变为“SUM(Sales)”。每个度量都有一个默认聚合,该聚合由 Tableau 在您连接到数据源时设置。您可以查看或更改度量的默认聚合 — 请参见为度量设置默认聚合。
可以使用 Tableau 只对关系数据源进行度量聚合。多维数据源包含已经聚合的数据。在 Tableau 中,只支持 Windows 中的多维数据源。
您可以通过其上下文菜单来更改视图中某个度量的聚合:
聚合维度
您可以采用“最小值”、“最大值”、“计数”或“计数(不重复)”的形式聚合视图中的维度。当聚合维度时,将创建一个新的临时度量列,使维度实际具有度量的特征。
查看维度的另一种方法是通过从维度的上下文菜单中选择“属性”将其作为属性处理。“属性”聚合有若干用途:
- 它可在混合多个数据源时确保一致的详细级别。
- 它可在计算表计算(需要聚合表达式)时提供一种聚合维度的方式。
- 它可以提高查询性能,因为它是经过计算的
Tableau 可使用以下公式来计算属性:
IF MIN([dimension]) = MAX([dimension]) THEN
MIN([dimension]) ELSE "*" END
通过初始查询检索数据后,将在 Tableau 中对该公式进行计算。星号 (*) 实际上是存在多个值时产生的特殊类型空值的可视指示符。若要了解有关星号的详细信息,请参见数据混合疑难解答(链接在新窗口中打开)。
这里是在表计算中使用属性的示例。该表按市场、市场大小和州来显示销售额。假设您需要计算每个州的总销售额占该市场销售额的百分比。在添加将按州进行计算的“总额百分比”快速表计算(请参见快速表计算(链接在新窗口中打开))时,将在红色区域内进行计算。这是因为,“Market Size”(市场规模)维度会对数据进行分区。
在您将“Market Size”(市场规模)作为“属性”进行聚合时,将在“Market”(市场)(在下图中为 East)内进行计算,并将“Market Size”(市场规模)纯粹作为标签。
Tableau 中预定义聚合的列表
有时,查看数字型数据的聚合形式(如总和或平均值)非常有用。用来产生聚合数据的数学函数称为聚合函数。聚合函数对一组值进行计算并返回单个值。例如,包含值 1, 2, 3, 3, 4 的某个度量经过求和聚合后返回单个值:13。或者,如果有 50 种产品的 3000 笔销售交易,则您可能希望查看每种产品的销售总额,以确定哪些产品的收入最高。
注意:将浮点值与聚合结合使用有时可能会导致意外结果。有关详细信息,请参见了解计算中的数据类型(链接在新窗口中打开)。
Tableau 提供如表中所示的一组预定义聚合。可以为非计算字段(本身包含聚合)的任何度量设置默认聚合,例如 AVG([Discount])
。请参见为度量设置默认聚合。还可以为视图中已存在的字段设置聚合。有关详细信息,请参见更改视图中的度量聚合。
聚合 | 描述 | 包含 1、2、2、3 的度量的聚合结果 |
---|---|---|
属性 | 如果组中所有行都只有单个值,则返回给定表达式的值,否则显示星号 (*) 字符。会忽略 Null 值。在对维度进行聚合时,此聚合很有用。要将视图中的某个度量设置为此聚合,请右键单击(在 Mac 上按住 Control 单击)该度量并选择“属性”。此字段随后更改为显示文本 ATTR: | * |
维度 | 返回度量或维度中的所有唯一值。 | 3 个值(1、2、3) |
总计 | 返回度量中数字的和。会忽略 Null 值。 | 1 个值 (8) |
平均值 | 返回度量中数字的算术平均值。会忽略 Null 值。 | 1 个值 (2) |
计数(不重复) | 返回度量或维度中唯一值的个数。当应用于某个维度时,Tableau 创建一个新的临时度量列,因为计数的结果是一个数字。可对数字、日期、布尔值和字符串进行计数。所有情况下均忽略空值。 此聚合不适用于以下类型的工作簿:
如果您连接到使用其中一种类型的工作簿,“计数(不重复)”将不可用,并且 Tableau 将显示消息“需要数据提取”。若要使用此聚合,请提取您的数据。请参见提取数据。 | 1 个值 (3) |
最小值 | 返回度量或连续维度中的最小数字。会忽略 Null 值。 | 1 个值 (1) |
最大值 | 基于样本总体返回度量或给定表达式中的最大值。会忽略 Null 值。如果非空样本成员少于 2 个,则返回空值。如果数据表示总体的样本,可使用此函数。 | 1 个值 (3) |
标准偏差(总体) | 基于有偏差总体返回给定表达式中所有值的标准差。假定其参数由整个总体组成。此函数适用于较大的样本大小。 | 1 个值 (0.7071) |
方差 | 基于样本返回给定表达式中所有值的方差。会忽略 Null 值。如果非空样本成员少于 2 个,则返回空值。如果数据表示总体的样本,可使用此函数。 | 1 个值 (0.6667) |
方差(总体) | 基于有偏差总体返回给定表达式中所有值的方差。假定其参数由整个总体组成。此函数适用于较大的样本大小。 | 1 个值 (0.5000) |
解聚 | 返回基础数据源中的所有记录。若要解聚视图中的所有度量,请从“分析”菜单中选择“聚合度量”(以清除复选标记)。 Tableau 允许查看解聚形式的数据(仅限关系数据库)。数据解聚后,可查看数据源中单独的行。例如,知道橡皮筋的销售总额为 $14,600,可能需要查看各笔销售交易的金额分布情况。为了回答这个问题,必须创建视图来显示各行数据。也就是说,必须解聚数据(请参见如何解聚数据)。查看解聚数据的另一种方法是查看整个或部分视图的基础数据。有关更多详细信息,请参见查看基础数据。 | 4 个值(1、2、2、3) |
也可以按照Tableau 中的聚合函数(链接在新窗口中打开) 中的说明定义自定义聚合。根据创建的数据视图类型,Tableau 将以相应的详细级别应用这些聚合。例如,Tableau 将聚合应用于单个维度成员(East 地区平均交付时间)、某个给定维度的所有成员(East、West 和 Central 地区的平均交付时间)或维度组(所有地区和所有市场的销售总额)。
为度量设置默认聚合
可以为非计算字段(本身包含聚合)的任何度量设置默认聚合,例如 AVG([Discount])
。默认聚合是优先对连续或离散字段进行汇总的计算。将度量拖到视图中时,会自动使用默认聚合。
更改默认聚合:
在“数据”窗格中右键单击(在 Mac 上按住 Control 单击)度量,并选择“默认属性”>“聚合”,然后选择其中一个聚合选项。
注意:可以使用 Tableau 只对关系数据源进行度量聚合。多维数据源只包含聚合数据。
您无法为发布的数据源设置默认聚合。默认聚合是在数据源最初发布时设置的。创建发布的数据源的本地副本(链接在新窗口中打开)以调整默认聚合。
如何解聚数据
每当您向视图中添加度量时,默认情况下都会向该度量应用一个聚合。此默认值通过“分析”菜单中的“聚合度量”设置进行控制。
如果决定要以最详细的粒度级别查看视图中的所有标记,您可以对视图进行解聚。解聚数据意味着 Tableau 将为数据源每一行中的每个数据值显示单独标记。
解聚视图中的所有度量:
清除“分析”>“聚合度量”选项。如果已选中该选项,请单击“聚合度量”一次将其取消选中。
如果“聚合度量”处于选中状态,默认情况下 Tableau 将尝试对视图中的度量进行聚合。数据源中的各个行值将在视图的详细级别聚合为单个值(单个标记)。
可用于度量的不同聚合确定单独值的聚集方式:对这些值进行加总 (SUM)、求平均值 (AVG),或设置为单独行值中的最大值 (MAX) 或最小值 (MIN)。
有关可用聚合的完整列表,请参见Tableau 中预定义聚合的列表。
详细级别由视图中的维度确定 — 有关详细级别的概念的信息,请参见维度会对视图中的详细级别产生怎样的影响。
在分析您可能想要在视图中独立和非独立使用的度量时,解聚数据可能非常有用。例如,您可能正在使用一个轴上的参与者年龄对产品满意度调查结果进行分析。可以聚合“Age”(年龄)字段以确定参与者平均年龄,或者解聚数据以确定哪个年龄的参与者对产品最满意。
在以散点图形式查看数据时,解聚数据可能很有用。请参见示例:散点图、聚合和粒度。
注意: 如果数据源非常大,解聚数据时可导致性能大幅下降。
示例:散点图、聚合和粒度
如果您将一个度量放置在“行”功能区上,将另一个度量放置在“列”功能区上,则表示您想要 Tableau 比较两个数值。通常,在这种情况下,Tableau 会选择散点图作为默认可视化形式。初始视图最可能是一个标记,显示两个度量的所有值的汇总。这是因为您必须增加视图中的详细级别。
开始构建散点图
可通过多种方式向基本散点图中添加详细信息:您可以使用维度添加详细信息,可以向“行”和“列”功能区添加更多字段,您也可以解聚数据。您也可以使用这些选项的任意组合。本主题介绍这些备选方法,并使用“Sample - Superstore”数据源。
若要创建初始视图,请执行以下步骤:
将“Sales”(销售额)度量放在“列”功能区上。
将“Profit”(利润)度量放在“行”功能区上。
度量自动聚合为总计。默认聚合 (SUM) 在字段名称中指示。工具提示中显示的值是数据源中每个行的销售额和利润总和。
按照这些步骤进行操作,使用维度向视图中添加详细信息以及解聚数据。
使用维度添加详细信息
按照这些步骤操作,通过添加维度以显示更多详细级别息,来完善您创建的散点图。
将“Category”(类别)维度拖到“标记”卡的“颜色”上。
这会将数据分隔成三种标记 - 每个维度成员一个标记 - 然后使用颜色对标记进行编码。
将“State”(州/省/市/自治区)维度拖到“标记”卡的“详细信息”上。
现在视图中有更多标记。标记数量等于数据源中不同的州/省/市/自治区数乘以类别数。
尽管显示更多标记,度量仍然是聚合的。因此,无论数据源中是只存在一个 State = North Dakota、Category= Furniture 的行还是 100 个这样的行,结果始终都是一个标记。
也许这个过程使视图朝着您认为有用的方向发展,或者您更喜欢朝不同的方向发展。一切都由您决定。
尝试向“行”和“列”功能区添加更多字段
恢复为原来的单标记视图并按照这些步骤操作,通过向“行”和“列”功能区添加字段来完善散点图。
将“State”(州/省/市/自治区)维度拖到“列”功能区。
即使您将“Continent”放到 SUM(Sales) 的右侧,Tableau 也会将其移到 SUM(Sales) 的左侧。这是因为您无法在连续轴内插入维度。相反,您的视图会为维度的每个成员显示一个单独的轴。
将“Segment”(细分市场)维度拖到“行”功能区。
现在,您有了一个可提供跨州/省/市/自治区和客户细分市场的销售额与利润概况的视图。将光标悬停于视图中的标记上以查看各个细分市场的工具提示数据可能会很有趣:
尝试解聚数据
另一种修改您原来的单标记散点图以显示更多标记的方法是解聚数据。
清除“分析”>“聚合度量”选项。如果已选中该选项,请单击“聚合度量”一次将其取消选中。
您做的是解聚数据,因为此命令会切换原来所选的选项(存在复选标记)。Tableau 默认情况下会聚合视图中的数据。
现在您看到许多标记 — 原始数据源中的每一行分别有一个标记:
当您解聚度量时,查看的将不再是数据源中各行值的平均值或总和。相反,视图会为数据源中的每一行显示一个标记。解聚数据是查看数据的整个表面区域的一种方法。这是了解数据形状和识别离群点的快捷方式。在这种情况下,视图显示销售额和利润之间存在一致的关系,由成 45 度角对齐的标记线表示。