【问题标题】:How to normalize data to a range in Tableau如何将数据标准化为 Tableau 中的范围
【发布时间】:2016-01-07 20:30:56
【问题描述】:

在 Tableau 中,我正在尝试实现以下规范化逻辑:

https://stats.stackexchange.com/questions/70801/how-to-normalize-data-to-0-1-range

基本上,我想从特定度量中获取所有值并将它们缩放到 [0, 1] 范围内的值。这需要收集度量的最小值和最大值。我想要的是……

(x - min(x)) / (max(x) - min(x))

如果您使用上述链接的方法创建计算字段,则会收到“无法混合聚合和非聚合”错误。

这就是我卡住的地方。是否有使其工作的功能和/或技巧?

【问题讨论】:

  • 你试过 attr(x) 来聚合变量的第一个实例吗?
  • ATTR(x) 仅在 x 始终为相同值时才有效。

标签: tableau-api


【解决方案1】:

您需要使用 LOD expressions 告诉 Tableau 您需要所有 x 值的最小值,而不仅仅是该行。试试:

    (x -{FIXED : MIN(x)})
    /
    ({FIXED  : MAX(x)}-{FIXED  : MIN(x)})

【讨论】:

  • 非常感谢,这几天我一直在找这个!
【解决方案2】:

你可以试试

(MEDIAN(X)- TOTAL(MIN(X))) / (TOTAL(MAX(X)) - TOTAL(MIN(X))). 

如果函数一次只作用于一个数据点,MEDIAN(X) 将只返回数据点本身的值。

【讨论】:

  • 如果你的 X 已经是一个聚合函数,你会怎么做?
猜你喜欢
  • 2016-08-19
  • 2018-06-15
  • 2016-10-31
  • 2019-12-23
  • 1970-01-01
  • 2014-02-01
  • 2019-03-02
  • 2016-04-25
  • 2019-08-12
相关资源
最近更新 更多