如何识别数据中有簇或块的记录?

时间:2019-05-08 22:40:45

标签: sql sql-server tableau tableau-server

我有一个Tableau表,如下所示:

Tableau Table

此数据可以如下显示:

Tableau Visual

我想标记有结块/团块的案件。这将标记项目B,C和D,因为仅在13周的某些周中存在峰值。项目A和E不会被标记,因为它们大多具有“扁平”配置文件。

如何在Tableau或SQL中创建这样的标志以隔离这种情况?

到目前为止我尝试过什么? 我尝试了一种逻辑,其中我为每个项目计算MAX和MEDIAN。与具有相当“平坦”配置文件的项目相比,需要标记的项目将具有更大的(MAX-MEDIAN)值。

请让我知道是否有更好的方法来创建此标志。

谢谢!

1 个答案:

答案 0 :(得分:0)

同意其他评论者的意见,可以用许多不同的方式回答这个问题,您可能需要统计专业的博士学位才​​能找到理想的答案。但是,鉴于您的基本要求,这可能是您可以实施的最简单/最简单的解决方案。

Answer

这是我到达这里的目的:

  1. 创建一个参数来定义您的“峰值”。如果它将始终是固定数字,则可以在公式中对此进行硬编码。我称min为“最小峰值价值”。

  2. 为每个存储桶中的中值创建一个公式。 {fixed [Buckets]: MEDIAN([Values])}。 (A,B,... E =“水桶”)。这样,您就可以比较每个字母/桶一个值。

  3. 创建一个公式以计算每个数字与中位数的差。 abs(sum([Values])-sum([Median Values]))。我们在此使用绝对值,因为尖峰可以是负值也可以是正值(同样,如果要以这种方式定义它……)。我将此称为“峰值与当前值的绝对差异”

  4. 创建一个计算字段,该字段的值为布尔值,以查看当前值是否超过尖峰阈值。 [Spike to Current Value abs difference] > min([Min Spike Value])

设置您的视域以使用此布尔值突出显示峰值。该参数的优点在于,您可以更改峰值的值,该值将相应地突出显示。上面的值为4,但是如果将其更改为8:

Spike of 8