内容:

在数据中查找群集

  • 版本 :2022.1 及更高版本

适用于: Tableau Desktop, Tableau Public

群集分析将视图中的标记分为群集,与其他群集中的标记相比,每个群集内的标记彼此更加类似。

观看视频:若要查看 Tableau 中演示的相关概念,请观看时长 2 分钟的聚类分析(链接在新窗口中打开)免费培训视频。使用 tableau.com(链接在新窗口中打开) 帐户登录。

有关演示使用示例数据创建群集的过程的示例,请参见示例:利用世界经济指标数据创建群集

创建群集

若要在 Tableau 中查找视图中的群集,请执行以下步骤。

  1. 创建视图。

  2. “分析”窗格中拖动“群集”并将其放在视图内的目标区域中。

    您还可以双击“群集”以查找视图中的群集。

    当您放置或双击“群集”时:

    • Tableau 在“颜色”上创建一个“群集”组,并按群集对视图中的标记着色。如果“颜色”中已经存在字段,则 Tableau 会将该字段移到“详细信息”上,并在“颜色”上将该字段替换为群集结果。

      Tableau 将视图中的每个标记分配给其中一个群集。在某些情况下,与某个群集不太相符的标记会分配给“未建立群集”群集。

    • Tableau 显示“群集”对话框,您可以在其中自定义群集。

  3. 通过在“群集”对话框中完成以下任一操作来自定义群集结果。

    • 将新字段从“数据”窗格拖到“群集”对话框的“变量”区域中。您也可以将字段拖出“变量”区域以将其移除。

      当您添加变量时,系统使用字段的默认聚合来聚合度量;使用 ATTR 来聚合维度,这是 Tableau 聚合维度的标准方法。

      若要更改变量的聚合,请右键单击该变量。

    • 指定群集的数目(2 到 50)。如果未指定值,Tableau 将自动创建最多 25 个群集。

  4. 完成自定义群集结果的操作时,单击“群集”对话框右上角中的 X 以关闭此对话框:

注意: 您可以将群集字段从“颜色”移到视图中的另一个功能区。但是,您无法将群集字段从“筛选器”功能区移到“数据”窗格。

若要重命名生成的群集,您必须先将群集保存为组。有关详细信息,请参见利用群集结果创建组编辑群集

群集约束

群集在 Tableau Desktop 中可用,但无法用于在 Web(Tableau Server、Tableau Online)上创作。如果满足以下任何条件,群集也可不可用:

  • 使用多维数据集(多维)数据源时。

  • 视图中存在混合维度时。

  • 没有字段可用作视图中群集的变量(输入)时。

  • 聚合视图中没有维度存在时。

如果满足任何这些条件,则无法将“群集”从“分析”窗格拖到视图中。

此外,以下字段类型无法用作群集的变量(输入):

  • 表计算

  • 混合计算

  • 临时计算

  • 生成的纬度/经度值

  • 数据桶

  • 参数

  • 日期

  • 度量名称/度量值

编辑群集

若要编辑某个现有群集,请右键单击(在 Mac 上按住 Control 单击)“颜色”上的“群集”字段,并选择“编辑群集”

若要更改用于每个群集的名称,您首先需要将“群集”字段拖到“数据”窗格并将其另存为组。有关详细信息,请参见利用群集结果创建组

右键单击群集组,并选择“编辑组”对每个群集进行更改。

在“组”列表中选择一个群集组,并单击“重命名”更改名称。

利用群集结果创建组

如果将群集拖到“数据”窗格,则它将成为组维度,其中的单个成员(群集 1、群集 2 等)包含一些标记,群集算法已确定与其他标记相比这些标记彼此更加相似。

将群集组拖到“数据”窗格后,您可以在其他工作表中使用它。

“群集”“标记”卡拖到“数据”窗格,创建一个 Tableau 组:

利用群集创建组后,该组和原始群集将会分离且不同。编辑群集不会影响组,而编辑组也不会影响群集结果。此组与任何其他 Tableau 组具有相同的特征。它是数据源的一部分。与原始群集不同,您可以在工作簿内的其他工作表中使用组。因此,如果您重命名保存的群集组,该重命名操作不会应用于视图中的原始群集。请参见通过将数据分组来纠正数据错误或合并维度成员

将群集另存为组时的限制

在以下任何情况下,您无法将群集保存到“数据”窗格:

  • 视图中的度量已解聚,并且用作群集变量的度量与视图中的度量不同时。有关详细信息,请参见如何解聚数据

  • 您想要保存的群集位于“筛选器”功能区上时。

  • “度量名称”“度量值”位于视图中时。

  • 视图中存在混合维度时。

重新调整保存的群集

将“群集”字段另存为组时,会随其分析模型一起保存。您可以在其他工作表和工作簿中使用您的群集组,但它们不会自动刷新。

在此示例中,已将保存的群集组及其分析模型应用于其他工作表。因此,某些标记尚未包括在聚类分析中(由灰色标记表示)。

如果基础数据发生变化,您现在可以使用“重新调整”选项来刷新和重新计算已保存群集组的数据。

重新调整保存的群集

  • 在“数据”窗格中右键单击群集组,然后单击“重新调整”

    下面是在重新调整保存的群集之后更新的聚类分析的示例:

    重新调整保存的群集时,将会创建新群集,并用新的通用群集别名替换每个群集组类别的现有别名。请注意,重新调整保存的群集可能会改变使用现有群集和别名的可视化项。

聚类分析的工作方式

群集分析将视图中的标记分为群集,与其他群集中的标记相比,每个群集内的标记彼此更加类似。Tableau 使用颜色来区分群集。

注意:若要更深入了解 Tableau 中聚类分析的工作方式,请参见博客文章了解 Tableau 10 中的聚类分析

聚类分析算法

Tableau 使用 k 均值算法进行聚类分析。对于给定的群集数量 k,算法将数据划分为 k 个群集。每个群集都有一个中心(质心),它是该群集中所有点的平均值。K 均值迭代过程来查找中心,该过程可最大程度地缩短群集中各个点与群集中心之间的距离。在 Tableau 中,您可以指定所需的群集数,或者让 Tableau 测试不同的 k 值并给出最佳群集数建议(请参见用于确定最佳群集数的条件)。

K 均值需要群集中心的初始规范。从一个群集开始,该方法会选择一个变量,其平均值用作将数据拆分为两部分的阈值。然后,将使用这两部分的中心来初始化 k 均值,以优化两个群集的成员身份。接着,将选择两个群集中的一个用于拆分,并且将选择该群集内的一个变量,该变量的均值用作将该群集拆分为两部分的阈值。然后,使用 K 均值将数据划分为三个群集,初始具有拆分群集的两部分的中心,以及剩余一个群集的中心。在达到设置的群集数之前,此过程会重复进行。

Tableau 将 Lloyd 的算法与平方欧氏距离结合使用来计算每个 k 的 k 均值聚类。与拆分过程结合使用来确定每个 k > 1 的初始中心,生成的聚类是确定性的,结果仅取决于群集数。

该算法首先选择初始群集中心:

然后通过将每一项分配给其最近的中心,从而对标记进行分区:

接下来,通过求分配给同一群集的所有点的平均值来计算每个分区的新中心,从而改善结果。

最后,复查分配给群集的标记,并重新分配现在比以前更接近于不同中心的任何标记。

此时,群集会被重新定义并且会以迭代方式重新分配标记,直到没有更多的变化发生为止。

用于确定最佳群集数的条件

Tableau 使用 Calinski-Harabasz 标准来评估群集质量。Calinski Harabasz 标准的定义是

其中 SSB 是群集间总体方差,SSW 是群集内总体方差,k 是群集数,N 是观察次数。

此比率的值越大,群集的内聚性越高(群集内方差小)并且单个群集的离散性/分离性也越高(群集间方差大)。

由于没有为 k=1 定义 Calinski-Harabasz 指数,因此无法使用它来检测一个群集的情况。

如果用户未指定群集数,Tableau 将选择与第一个局部 Calinski-Harabasz 指数最大值对应的群集数。默认情况下,如果对于某个较小的 k 值未达到第一个局部指数最大值,则将为最多 25 个群集运行 k 均值。您可以设置最大值 50 个群集。

注意:如果分类变量(即维度)具有的唯一值超过 25 个,则 Tableau 在计算群集时会忽略该变量。

哪些值将分配给“未建立群集”类别?

当度量具有 Null 值时,Tableau 会将具有 Null 的行的值分配给“未群集”类别。针对 ATTR 返回 *(意味着所有值都不相同)的分类变量(即维度)也未进行群集。

缩放

Tableau 会自动对值进行缩放,以便大小范围较大的列不会影响结果。例如,分析师可能会使用通胀和 GDP 作为群集的输入变量,但是由于 GDP 值以万亿美元为单位,这可能会导致通胀值在计算中几乎完全被忽视。Tableau 使用一种称为最小值-最大值标准化的缩放方法,在这种方法中,每个变量的值将通过减去最小值并除以其范围来映射为 0 和 1 之间的值。

用于群集的统计模型的相关信息

“描述群集”对话框提供有关 Tableau 为群集计算的模型的信息。您可以使用这些统计数据来评估群集的质量。

当视图包括群集时,通过右键单击(在 Mac 上按住 Control 单击)“标记”卡上的“群集”,并选择“描述群集”,您可以打开“描述群集”对话框。“描述群集”对话框中的信息是只读的,不过,您可以单击“复制到剪贴板”,然后将屏幕内容粘贴到可写文档中。

描述群集 -“摘要”选项卡

“摘要”选项卡标识用于生成群集的输入,并提供一些描述集群特征的统计数据。

群集输入

变量

标识 Tableau 计算群集所使用的字段。这些字段是“群集”对话框内“变量”框中列出的字段。

详细级别

标识构成视图详细级别的字段 - 即确定聚合级别的字段。有关详细信息,请参见维度会对视图中的详细级别产生怎样的影响

缩放

标识用于预处理的缩放方法。目前是,“标准化”是 Tableau 使用的唯一缩放方法。此方法的公式(也称为最小值-最大值标准化)为 (x – min(x))/(max(x) - min(x))

摘要诊断

群集数

群集中的单个群集数。

点数

视图中的标记数。

组间平方和

此指标将群集间隔量化为每个群集的中心(平均值,通过分配给群集的数据点数加权)与数据集中心之间的平方距离总和。此值越大,群集之间的间隔就越好。

组内平方和

此指标将群集内聚性量化为每个群集的中心与群集中单个标记之间的平方距离总和。此值越小,群集的内聚性就越高。

总平方和

计算组间平方和与组内平方和的总和。(组间平方和)/(总平方和)的比率提供模型所解释的差值百分比。值介于 0 和 1 之间;值越大,通常表明模型越好。但是,您只需增加群集数便可提高此比率,因此,如果只使用此值将五群集模型与三群集模型进行比较,将可能会产生误导。

群集统计数据

对于群集中的每个群集,系统提供了以下信息。

项数

群集中的标记数。

中心

每个群集(针对数字项而显示)内的平均值。

最常用

每个群集(仅针对类别项而显示)内的最常用值。

描述群集 -“模型”选项卡

方差分析 (ANOVA) 是统计模型及关联程序的集合,用于分析已分区为组或群集的观察值内和观察值之间的差值。在这种情况下,将会为每个变量计算方差分析,并且生成的方差分析表可用于确定对于区分群集最有效的变量。

聚类分析的相关方差分析统计数据包括:

F 统计数据

单向或单因素 ANOVA 的 F 统计数据是变量所解释的方差分数。它是组间方差与总方差的比率。

F 统计数据越大,在群集之间就能更好地区分对应变量。

p 值

p 值是指 F 统计数据所有可能值的 F 分布的值大于变量实际 F 统计数据的概率。如果 p 值低于指定的显著性水平,则可以拒绝零假设(变量的单独元素是单个群体的随机样本)。此 F 分布的自由度为 (k - 1, N - k,其中 k 是群集数,N 是已建立群集的项数(行数)。

p 值越低,对应变量的元素的预期值在群集之间的区别就越大。

模型平方和及自由度

模型均方值是组间平方和与模型自由度的比率。组间平方和是对群集均值之间差值的度量。如果群集均值彼此很接近(因此与总均值也很接近),则值将很小。模型的自由度为 k-1,其中 k 为群集数。

误差平方和及自由度

误差平方和是组内平均和与误差自由度的比率。组内平方和测量每个群集内的观察值之间的差值。误差的自由度为 N-k,其中 N 是已建立群集的总观察值数(行数),k 为群集数。

可以将误差平方和看作是总体均方误差,并假定每个群集中心都表示每个群集的“真实值”。

示例:利用世界经济指标数据创建群集

Tableau 群集功能将视图中的标记分为群集,与其他群集中的标记相比,每个群集内的标记彼此更加类似。此示例演示研究员如何使用群集来查找数据源中的最优标记集(本例中为国家/地区)。

目标

随着全球范围平均寿命的增长,并且老年人保持更加积极的生活状态,对于知道如何发现潜在客户并投其所好的公司而言,老年旅游可能是一个有利可图的市场。Tableau 附带的 World Indicators 示例数据集包含了这种数据,可帮助公司确定有足够这种适当客户的国家或地区。

查找正确的国家/地区

下面的示例演示 Tableau 群集如何能帮助这样的公司确定老年旅游业务可能取得成功的国家/地区。假设您是分析人员。下面是您可执行的步骤。

  1. 在 Tableau Desktop 中打开 World Indicators 示例数据源。

  2. “数据”窗格中双击“国家/地区”

    Tableau 将使用每个国家/地区中的一个标记自动创建地图视图。

  3. “标记”卡上,将标记类型更改为“地图”

    现在,您应该会看到一个用纯色填充所有国家/地区的地图投影:

  4. 下一步是确定您将用作群集变量的字段。下面是您选择的字段:

    字段包含该字段的原因
    Life Expectancy FemaleLife Expectancy Male人们的寿命越长,就越有可能对在晚年外出旅游感兴趣。
    Population Urban在人口密度更大的地区进行服务营销更容易。
    Population 65+目标群体是有时间和资金外出旅游的老年居民。
    TourismPerCapita

    这是您必须作为命名计算字段创建的度量。公式为:

    SUM([Tourism Outbound])/SUM([Population Total])

    Tourism Outbound 对某个国家/地区的居民每年花费在国际旅游上的资金(以美元为单位)进行聚合。但必须将这一总金额除以每个国家/地区的人口来确定每个居民花费在国际旅游上的平均金额。

    我们不能保证这些字段是可选择的理想字段,也不能保证这些字段生成的群集结果清晰明了。建立群集是一种迭代过程 — 实验带来发现,而发现反过来又会带来更多实验。

  5. 将这五个字段从“数据”窗格拖到“标记”卡上的“详细信息”

  6. 单击以打开“分析”窗格:

  7. “分析”窗格中拖动“群集”并将其放在视图中:

    Tableau 将显示“群集”对话框,并将视图中的度量添加到变量列表:

    它还会将群集添加到“颜色”以更新视图。在本例中,Tableau 发现了两个不同的群集,但不能将某些国家/地区(红粉色)分配给任何群集:

    注意:有关 Tableau 分配给“未建立群集”的数据的详细信息,请参见聚类分析的工作方式

  8. 您认为两个群集不够 — 您没有资源在全球一半的国家/地区开店。因此您在“群集”对话框的“群集数”字段中键入 4

    地图变得更加有趣:

    但这些群集与您选择的变量有何关系?哪个群集与支持老年旅游的因素最相关?是时候看看群集背后的统计数据了。

  9. 单击“群集”对话框右上角的 X 将其关闭:

  10. 单击“标记”卡上的“群集”字段,并选择“描述群集”

    “描述群集”对话框中“模型”选项卡底部的表显示每个群集中每个变量的平均值:

    群集 4 的平均寿命最高(男性和女性均如此)、城市人口集中度最高,并且国际旅游的花费最高:人均 1360.40 美元。群集 4 不具有最高值的唯一变量是“Population 65+”(65 岁以上人群),在这一变量中,群集 3 具有优势:在群集 4 中为 0.15493(略低于 16%)至 0.11606(略高于 11%)。

    群集算法不知道您是在查找这些变量的最大值、最小值还是中间值,它只会查找关联。但您知道,这些变量的较高值就是您所查找的信号,群集 4 就是最佳选择。

  11. 您可能会尝试从地图中选取群集 4 的国家/地区,但还有更轻松的方式。关闭“描述群集”对话框,然后在“颜色”图例上单击“Cluster 4”(群集 4),并选择“只保留”

  12. 从智能显示中选择文本表。

    您现在将看到群集 4 中国家/地区的列表:

    此列表不代表流程结束。您可以尝试使用一组稍有不同的变量以及可能不同的一些群集再次建立群集,或者,您可以根据其他因素向列表中添加一些国家/地区并移除其他国家/地区。举例来说,如果您主要经营热带地区旅游,则可以从列表中移除像库拉索岛和巴哈马群岛这样的国家/地区,因为热带旅游对于这些国家/地区的居民可能没有吸引力。

    另一个选项是在重新建立群集之前筛选您的数据,以便仅显示人口大于特定阈值的国家/地区,或者将目标确定为位于特定地理区域的国家/地区。