计算 Tableau 中具有冗余行的列的百分比
Calculate the percentage of a column which has redundant rows in Tableau
我想计算具有冗余行的列的百分比。
例如...我想计算下面table
中A和B的"Success"百分比
+-------+---------+
| Name | Result |
+-------+---------+
| A | Success |
| B | Success |
| A | Fail |
| A | Success |
| B | Fail |
| B | Fail |
| A | Success |
+-------+---------+
我尝试通过放置 If([NAME]) = "Success" then 1 else 0 来使用计算字段
然后将 table 计算编辑为百分比 -> table 上下...但没有用 :(
您完全可以使用 "Percent of Total" table 计算。棘手的一点是进入 "Edit Table Calculation" 对话框并告诉 Tableau 您希望它如何执行计算。
这是一个如何执行此操作的示例,您可以根据自己的特定需求进行调整。将 [Name]
和 [Result]
放在行架子中。然后将 SUM(Number of Records)
放入文本中。你最终会得到这样的结果:
Name Result | |
---------------------+-----+
A Fail | 1 |
Success | 3 |
--------------------+-----+
B Fail | 2 |
Success | 1 |
--------------------+-----+
然后右键单击 SUM(Number of Records)
并单击 "Add Table Calculation..."。在 Table 计算对话框的顶部,转到 "Calculation Type:" 并选择 "Percent of Total"。在 "Summarize the values from:" 中,它将默认为 "Table (Down)"。继续并在这一点上点击应用,看看会发生什么。坏消息 - 这是错误的。
Name Result | |
---------------------+-----+
A Fail | 14% |
Success | 43% |
--------------------+-----+
B Fail | 29% |
Success | 14% |
--------------------+-----+
默认的 "Table (Down)" 几乎不是您真正想要的。上面说的是计算整个分区的总百分比,但实际上您希望看到每个名称的总百分比。
直到你真正擅长这部分(甚至可能在你成为 Tableau 禅师和 Tableau 人中的神之后),我建议总是去定义 table 计算时的高级菜单。这是一个很好的机会,可以真正考虑您希望 Tableau 如何执行计算。在这种情况下,您想要计算每个名称的每个结果(成功和失败)的百分比。
转到“高级”对话框(在 "Summarize the values from:" 下)。您将在 Partitioning 下看到 Name 和 Result,在 Addressing 下什么也看不到。将结果移至寻址并将名称保留在分区下。你在这里说的是 "I want Tableau to calculate the percent of each result (Success or Failure). I want it to do this for each name."
应用这些更改,您应该会看到如下内容:
Name Result | |
---------------------+-----+
A Fail | 25% |
Success | 75% |
--------------------+-----+
B Fail | 67% |
Success | 33% |
--------------------+-----+
完美。如果您只想查看成功,只需右键单击 table 中的 "Fail",然后单击隐藏。不要过滤掉它们。这将从您的分区中删除这些行,从而从总计算百分比中考虑的总数中删除这些行。通过隐藏失败而不是过滤它们,您将它们保留在分区中但不在数据视图中显示它们。
我想计算具有冗余行的列的百分比。 例如...我想计算下面table
中A和B的"Success"百分比+-------+---------+
| Name | Result |
+-------+---------+
| A | Success |
| B | Success |
| A | Fail |
| A | Success |
| B | Fail |
| B | Fail |
| A | Success |
+-------+---------+
我尝试通过放置 If([NAME]) = "Success" then 1 else 0 来使用计算字段 然后将 table 计算编辑为百分比 -> table 上下...但没有用 :(
您完全可以使用 "Percent of Total" table 计算。棘手的一点是进入 "Edit Table Calculation" 对话框并告诉 Tableau 您希望它如何执行计算。
这是一个如何执行此操作的示例,您可以根据自己的特定需求进行调整。将 [Name]
和 [Result]
放在行架子中。然后将 SUM(Number of Records)
放入文本中。你最终会得到这样的结果:
Name Result | |
---------------------+-----+
A Fail | 1 |
Success | 3 |
--------------------+-----+
B Fail | 2 |
Success | 1 |
--------------------+-----+
然后右键单击 SUM(Number of Records)
并单击 "Add Table Calculation..."。在 Table 计算对话框的顶部,转到 "Calculation Type:" 并选择 "Percent of Total"。在 "Summarize the values from:" 中,它将默认为 "Table (Down)"。继续并在这一点上点击应用,看看会发生什么。坏消息 - 这是错误的。
Name Result | |
---------------------+-----+
A Fail | 14% |
Success | 43% |
--------------------+-----+
B Fail | 29% |
Success | 14% |
--------------------+-----+
默认的 "Table (Down)" 几乎不是您真正想要的。上面说的是计算整个分区的总百分比,但实际上您希望看到每个名称的总百分比。
直到你真正擅长这部分(甚至可能在你成为 Tableau 禅师和 Tableau 人中的神之后),我建议总是去定义 table 计算时的高级菜单。这是一个很好的机会,可以真正考虑您希望 Tableau 如何执行计算。在这种情况下,您想要计算每个名称的每个结果(成功和失败)的百分比。
转到“高级”对话框(在 "Summarize the values from:" 下)。您将在 Partitioning 下看到 Name 和 Result,在 Addressing 下什么也看不到。将结果移至寻址并将名称保留在分区下。你在这里说的是 "I want Tableau to calculate the percent of each result (Success or Failure). I want it to do this for each name."
应用这些更改,您应该会看到如下内容:
Name Result | |
---------------------+-----+
A Fail | 25% |
Success | 75% |
--------------------+-----+
B Fail | 67% |
Success | 33% |
--------------------+-----+
完美。如果您只想查看成功,只需右键单击 table 中的 "Fail",然后单击隐藏。不要过滤掉它们。这将从您的分区中删除这些行,从而从总计算百分比中考虑的总数中删除这些行。通过隐藏失败而不是过滤它们,您将它们保留在分区中但不在数据视图中显示它们。