知识库

进行聚合时移除字段值的最高和最低百分比(异常值)


发布时间: 17 Apr 2017
上次修改日期: 20 Jul 2023

问题

如何在聚合时移除字段值的最高和最低 X%(异常值)。

环境

Tableau Desktop

答案

步骤 1: 创建视图

  1. 打开 Tableau Desktop,并连接到 Superstore 示例数据源。
  2. “City”(城市)拖到“行”
  3. “Number of Records”(记录数)拖到“标记”卡上的“文本”
  4. 依据“Number of Records”(记录数)的和按降序对“City”(城市)进行排序。

步骤 2: 创建两个需要的参数

  1. “数据”窗格中,单击右上角的下拉箭头,并选择“创建参数”
  2. 在“创建参数”对话框中,执行以下操作,然后单击“确定”
  • 为字段指定一个名称,例如:“Bottom Pct.”(最低百分比)
  • 对于“数据类型”,选择“浮点”
  • 对于“显示格式”,选择“百分比”
  • 对于“允许的值”,选择“范围”
  • “最小值”设置为 0.05,将“最大值”设置为 0.25,并将 “步长”设置为 0.05。
  • “数据”窗口中右键单击“Bottom Pct.”(最低百分比),然后选择“显示参数控件”
  1. 重复上面的步骤创建另一个参数“Top Pct.”(最高百分比),并将“最小值”设置为 0.75,将“最大值”设置为 1.0,并将“步长”设置为 0.05。

步骤 3: 创建仅包括中间值 Y% 的计算字段。

  1. 选择“分析”>“创建计算字段”
  2. 在“计算字段”对话框中,执行以下操作,然后单击“确定”
  • 为计算字段命名,例如,“Filtered Sales”(筛选的销售额)
  • 将以下语句复制并粘贴到公式字段中:
IF [Sales] > { FIXED [City]: PERCENTILE([Sales], [Bottom Pct.])} AND [Sales] < { FIXED [City]: PERCENTILE([Sales], [Top Pct.])}
THEN [Sales]
END

步骤 4:创建一个可排除数据的最低/最高 X% 的筛选器。

  1. 将上面创建的计算字段“Filtered Sales”(筛选的销售额)拖到“筛选器”功能区上。
  2. 在“筛选器字段”对话框中,选择“所有值”,并单击“下一步”
  3. 选择“特殊”>“非 Null 值”,并单击“确定”

其他信息

之所以需要两个参数,原因是 PERCENTILE() 的参数 2 必须是浮点文字,这意味着我们无法简单地在计算字段中使用表达式“1 – [Bottom Pct.]”作为此函数的第二个参数,因为该表达式内有运算符,因此不是浮点文字。
此文章是否已解决问题?