Tableau Desktop 中包含第二个日期的分析

这是教程的第二个阶段,并且假定第一个阶段使用 Tableau Prep 查找第二个日期已完成。

在第一个阶段中,我们采用原始数据集并对其进行调整来回答以下问题:

  1. 每个司机第一次和第二次违章相隔多长时间(以天数为单位)?

  2. 比较第一次和第二次违章的罚款金额。这些金额是否相关?

  3. 总体而言,哪个司机支付的罚款最多?谁支付的最少?

  4. 有多少司机有过多种类型的违章?

  5. 从未上过交通法规学习班的司机的平均罚款金额是多少?

我们现在探讨这些问题时,可以清晰地发现我们创建的第一个数据结构有一些优缺点。我们将返回到 Tableau Prep Builder 中并进行一些额外的重新调整,然后看看会对 Tableau Desktop 中同样的分析产生怎样的影响。最后,我们将探讨 Tableau Desktop 独有的将详细级别 (LOD) 表达式与原始数据结合使用进行分析的方法。

本教程的目标是在一个真实场景的上下文中呈现各种概念并演练各个选项 — 而不是规定式地确定哪一个是最好的。最后,您应该会对数据结构对计算和分析的影响有更深的认识,并更加熟悉 Tableau Prep 的各项功能以及 Tableau Desktop 中的计算。

注意:为了完成本教程中的任务,您需要安装 Tableau Prep Builder 并根据需要安装 Tableau Desktop,并下载相关数据。

若要在继续学习本教程之前安装 Tableau Prep 和 Tableau Desktop,请参见 Tableau Desktop 和 Tableau Prep 部署指南(链接在新窗口中打开)。否则,您可以下载 Tableau Prep(链接在新窗口中打开)Tableau Desktop(链接在新窗口中打开) 免费试用版。

数据集是在第一个阶段中构建的 Driver Infractions.tflx 的输出。

Tableau Desktop 中的分析

既然我们已经配置了数据,我们就将其引入 Tableau Desktop。我们可以轻松地回答一些问题,但其他问题会涉及一些(或很多)计算。请尝试下面的问题;如果遇到困难,您可以展开每个问题来了解有关如何继续的基本信息。

注意:您可以下载工作簿 Driver Infractions.twbx(链接在新窗口中打开),在上下文中探讨解决方案。请记住,可以通过一些替代方式来解读分析或寻找答案。

1.每个司机第一次和第二次违章相隔多长时间(以天数为单位)?
2.比较第一次和第二次违章的罚款金额。这些金额是否相关?
3.总体而言,哪个司机支付的罚款最多?谁支付的最少?
4.有多少司机有过多种类型的违章?
5.从未上过交通法规学习班的司机的平均罚款金额是多少?

更进一步 — 转置的数据

尽管我们一直在处理的数据结构良好,可以解决与第一次和第二次违章特定相关的问题,但它并不是我们建议用于 Tableau Desktop 的标准结构。我们的分析背离与违章日期相关的基本问题越远,用于将相关信息合并为可用形式的计算就会变得越复杂。

通常,如果为同一类型的数据使用多个列存储数据(例如两个列用于日期,两个列用于罚款金额等),并且唯一的信息存储在字段名中(例如是第一次还是第二次违章),这就表明应该要对数据进行转置。

在 Tableau Prep Builder 中执行多重转置可以很好地处理这一点。我们可以从上一教程使用 Tableau Prep 查找第二个日期中创建的“Driver Infraction”(司机违章)Tableau Prep 流程的末尾开始工作。

提示:请确保返回 Tableau Prep 来执行这些步骤。

  1. 从最后的清理步骤中,添加一个“Pivot”(转置)步骤,该步骤将按每个重复的字段进行转置。使用“转置的字段”区域右上角的加号 图标来添加更多“转置值”。每一组字段(例如第一次和第二次罚款金额)应一起转置。

    有关转置的详细信息,请参见清理和调整数据

  2. 在“转置的字段”区域中的“Pivot1 Names”(转置 1 名称)列下,双击每个值并将其重命名为“1st”(第一)和“2nd”(第二)。

    Tableau Prep 中的“Pivot 1”(转置 1)配置窗格,显示五个转置

通过移除 null 日期以及重命名字段并对其进行重新排序,可以对结果进行整理。

  1. 在转置后面添加清理步骤。在“Infraction Date”(违章日期)列中,右键单击 null 栏并选择“排除”

  2. 双击字段名“Pivot1 Names”(转置 1 名称),并将其重命名“Infraction Number”(违章次数)。

  3. 视情况而定拖动数据以按如下方式对其进行重新排序:

    转置和清理的数据的预览

  1. 依据新的转置的数据创建一个名为“Pivoted Driver Infractions”(转置的司机违章)的输出,并将其引入 Tableau Desktop。(在添加“输出”步骤之后,不要忘记运行流程。)

现在,我们可以用这个转置的数据结构再次探讨我们的五个问题;如果遇到困难,您可以展开每个问题来了解有关如何继续操作的基本信息。

注意:您可以下载完成的流程文件 Pivoted Driver Infractions.tflx 来检查您的工作,或者下载工作簿 Pivoted Driver Infractions.twbx 在上下文中查看解决方案。请记住,可以通过一些替代方式来解读分析或寻找答案。

1.每个司机第一次和第二次违章相隔多长时间(以天数为单位)?
2.比较第一次和第二次违章的罚款金额。这些金额是否相关?
3.总体而言,哪个司机支付的罚款最多?谁支付的最少?
4.有多少司机有过多种类型的违章?
5.从未上过交通法规学习班的司机的平均罚款金额是多少?

转置数据的优点

如果知道我们只需要回答可以使用教程中的原始数据结构轻松回答的问题,我们可以继续使用该结构。不过,转置的数据格式更加灵活。即使它需要一些计算,但在计算就位之后,生成的数据集将非常适合于回答更广泛的问题。

再进一步 — 只使用计算

如果您无法访问 Tableau Prep Builder,将会怎么样?如果被迫使用原始数据,您是否完全不走运?根本不会!

Tableau Desktop 和 LOD 表达式可以回答所有分析问题。如果我们连接到原始的 Traffic Violations.xlsx(链接在新窗口中打开),它看起与已转置数据集非常相似 — 只是没有重要的“Infraction Number”(违章次数)字段。我们将需要通过 LOD 表达式模拟聚合步骤的输出。

注意:您可以下载工作簿 LOD Driver Infractions.twbx(链接在新窗口中打开),在上下文中探讨解决方案。请记住,可以通过一些替代方式来解读分析或寻找答案。

1.每个司机第一次和第二次违章相隔多长时间(以天数为单位)?
2.比较第一次和第二次违章的罚款金额。这些金额是否相关?
3.总体而言,哪个司机支付的罚款最多?谁支付的最少?
4.有多少司机有过多种类型的违章?
5.从未上过交通法规学习班的司机的平均罚款金额是多少?

请务必记住,此解决方案包含大量的嵌套计算和 LOD 表达式。视数据集的大小以及数据集的复杂性而定,可能会出现性能问题。

对各种方法的反思

那么您应该采用哪种方法呢?这完全取决于您,并且工具任由您随意使用。

  • 如果您想要避开 LOD,则可以使用数据调整解决方案,尽管对于某些分析(Tableau Desktop 中的分析)计算可能是必需的。

  • 如果您能够调整数据并且熟悉计算(包括 LOD),则中间型选项可以提供最好的灵活性(更进一步 — 转置的数据)。

  • 如果您熟悉 LOD、对性能的影响较小,并且/或者您无法访问 Tableau Prep,则单独使用 LOD 解决此问题是可行的选项(再进一步 — 只使用计算)。

至少,它对于了解 Tableau Prep 中的聚合和 Tableau Desktop 中的详细级别表达式如何相互关联以及会对数据分析产生怎样的影响是有价值的。如同 Tableau 中的大多数功能一样,执行任何操作的方法都有多种。探索各种各样的选项可以帮助将概念联系在一起,让您能挑选最适合于自己的解决方案。

使用的计算:

注意:特别感谢 Ann Jackson 的 Workout Wednesday 主题 Do Customers Spend More on Their First or Second Purchase?(客户在第一次或第二次购买时是否花费更多?)(链接在新窗口中打开)以及 Andy Kriebel 的 Tableau Prep 技巧 Returning the First and Second Purchase Dates(返回第一次和第二次购买日期)(链接在新窗口中打开),这些文章为本教程提供了最初的灵感。单击这些链接会使您离开 Tableau 网站。Tableau 对外部提供商所维护的页面的准确性或新鲜度不担负任何责任。如果您对其内容有任何疑问,请与所有者联系。