上次修改日期: 13 Sep 2023
环境
Tableau Desktop答案
使用 IF 语句将表计算筛选器添加到其他表计算的语法中。附带的示例工作簿使用示例数据集“Superstore”来演示以下指引:
步骤 1:设置视图
- 将“[Customer Name]”(客户名称)拖到“行”功能区
- 将 [销售额] 拖到“标记”卡上的“文本”
- 右键单击“标记”卡上的 [销售额],然后选择“快速表计算”>“总额百分比”
- 右键单击“标记”卡上的 [销售额],并选择“计算依据”>“表(向下)”
- 选择“分析”>“创建计算字段”
- 在打开的“计算字段”对话框中,执行以下操作,然后单击“确定”:
- 命名此计算字段。在此示例中,计算字段名为“销售额排名”
- 在公式字段中,创建一个类似于如下的计算:
RANK(SUM([Sales]))
- 将 [销售额排名] 拖到“筛选器”功能区
- 在筛选器对话框中,选择 1 到 10 的排名,然后单击“确定”。
步骤 2:创建新计算
- 打开一个新的计算,并将 [销售额] 从“标记”卡拖到计算编辑器中。Tableau Desktop 将自动为总销售额百分比写出公式,具体如下所示:
SUM([Sales]) / TOTAL(SUM([Sales]))
- 用一个 IF 语句封装 SUM([Sales]) 的每个实例,该语句将对 10 以内的排名进行筛选。最终计算可能如下所示:
IF [Rank of Sales] <= 10
THEN SUM([Sales])
END
/
WINDOW_SUM(IF [Rank of Sales] <= 10
THEN SUM([Sales])
END)
注意:还需要将表计算 TOTAL() 替换为 WINDOW_SUM(),因为 TOTAL 只适用于聚合,不适用于更复杂的表达式。
- 将 [销售额] 替换为新的计算
其他信息
筛选器功能区上的任何表计算都不会影响视图中的任何表计算。因此,必须通过显式方式将筛选器添加到最终的表计算中。使用表计算转换值
依据视图中不存在的维度运算表计算
感谢您提供该文章是否有效的反馈。
打开新案例
继续搜索
知识库
社区
产品帮助
培训和教程
相关链接
Results 1-3 of 778