两个值之间的差异 - 相同的维度,相同的度量
Difference between two values - same Dimension, same Measure
如上图所示,我正在尝试添加新列并计算 =2014-2017 之间的差异。
有没有办法做到这一点,因为 Tableau 的选项 "Table Calculation" 对我不起作用。
通过 table 计算得出第一个和最后一个周期之间的差异:
首先您需要获取最小年份值(我调用该字段 "Min Year Select"):
IF DATETRUNC('year',[Order Date]) =
{FIXED: MIN(DATETRUNC('year',[Order Date]))}
THEN 1 END
上面名为最小年份的字段 Select 表示如果订单日期的年份是您的日期范围内的最小年份,它应该 return 1
现在我们标记最小的年份,我们可以创建一个字段来获取值(我称之为 "Min Year Segment"):
IF SUM([Min Year Select]) >= 1 THEN [Sales] END
这里我们说如果年份被标记为最小的(按照我们之前做的计算字段分类),那么得到值
但在我们比较这两个值之前,您必须计算出最小年份和当前年份之间的时间段数,以便差异计算查找字段比较正确的值(我将其称为 "Number Years in Range"):
{FIXED [Segment]: COUNTD(DATETRUNC('year',[Order Date]))}
我们正在做的是在类别级别(细分)修复查询,将其视为从报告中删除日期药丸,然后执行计算。这是 COUNT DISTINCT 年。因此,如果一个段有 2011、2012、2013 年的数据;然后查询 returns 3
我们现在可以得到您最新和最小分段之间的差异(称为:"Difference from First Last Segment"):
[Segment] -
LOOKUP([Min Year Segment],
-1*(Number Years in Range)-1)
首先我们得到每个细分市场第一年的销售额(对于所有非第一年的最小年份细分市场将为空,因此我们需要通过我们范围内的年份数向后查找第一年:
我们执行 -1 * 是因为我们希望查找向后查找,然后我们添加 ("Number Years in Range" - 1) 因为我们希望查找具有最早数据的时间段。我们减一,所以我们排除了数据集中 year/latest 的当前年份
要消化的东西太多了,我觉得用图片展示也更容易:
这里我们计算第一个月和最后一个月的差值,取上个月的值
如果这对您有帮助或者您还有其他问题,请为我的 answer/let 我知道的
投票
如上图所示,我正在尝试添加新列并计算 =2014-2017 之间的差异。
有没有办法做到这一点,因为 Tableau 的选项 "Table Calculation" 对我不起作用。
通过 table 计算得出第一个和最后一个周期之间的差异:
首先您需要获取最小年份值(我调用该字段 "Min Year Select"):
IF DATETRUNC('year',[Order Date]) =
{FIXED: MIN(DATETRUNC('year',[Order Date]))}
THEN 1 END
上面名为最小年份的字段 Select 表示如果订单日期的年份是您的日期范围内的最小年份,它应该 return 1
现在我们标记最小的年份,我们可以创建一个字段来获取值(我称之为 "Min Year Segment"):
IF SUM([Min Year Select]) >= 1 THEN [Sales] END
这里我们说如果年份被标记为最小的(按照我们之前做的计算字段分类),那么得到值
但在我们比较这两个值之前,您必须计算出最小年份和当前年份之间的时间段数,以便差异计算查找字段比较正确的值(我将其称为 "Number Years in Range"):
{FIXED [Segment]: COUNTD(DATETRUNC('year',[Order Date]))}
我们正在做的是在类别级别(细分)修复查询,将其视为从报告中删除日期药丸,然后执行计算。这是 COUNT DISTINCT 年。因此,如果一个段有 2011、2012、2013 年的数据;然后查询 returns 3
我们现在可以得到您最新和最小分段之间的差异(称为:"Difference from First Last Segment"):
[Segment] -
LOOKUP([Min Year Segment],
-1*(Number Years in Range)-1)
首先我们得到每个细分市场第一年的销售额(对于所有非第一年的最小年份细分市场将为空,因此我们需要通过我们范围内的年份数向后查找第一年:
我们执行 -1 * 是因为我们希望查找向后查找,然后我们添加 ("Number Years in Range" - 1) 因为我们希望查找具有最早数据的时间段。我们减一,所以我们排除了数据集中 year/latest 的当前年份
要消化的东西太多了,我觉得用图片展示也更容易:
这里我们计算第一个月和最后一个月的差值,取上个月的值
如果这对您有帮助或者您还有其他问题,请为我的 answer/let 我知道的
投票