如何计算 Tableau 中聚合度量的百分比差异?
How to calculate percent difference for an aggregated measure in Tableau?
我正在尝试计算当前期间和上一期间净销售额的百分比差异。我能够计算未聚合的度量的百分比差异。但是,就我而言,净销售额是根据以下公式计算得出的,这使它成为一个汇总指标:
SUM([Gross Sales])-ZN(SUM([Promotions]))-ZN(SUM([Refund_Amount]))-ZN(SUM([OrderTax]))-ZN(SUM([Shipping Tax]))
下面是我正在使用的其他公式
前期销售额:IF ATTR([In Prior Period?]) THEN [Net Sales] END
本期销售额:IF ATTR([In Current Period?]) THEN [Net Sales] END
% 净销售额差异:([Current Period Sales]-[Prior Period Sales]) /[Prior Period Sales]
但是,我没有得到 % Diff Net Sales
的任何值。但是,当使用非聚合度量时,说单位销售额而不是净销售额,我得到了正确的值。
在这种情况下,我使用公式:
Current period sales: SUM(IF [In Current Period?] = True THEN [Unit Sales] END)
这些是我正在使用的计算和数据结构。(前面带有 # 的字段是计算字段,因此是聚合字段)
感谢您对此问题的帮助。
高里
我尝试了以下计算当期销售额的公式:
(退款来自混合数据源,因此略有不同)
SUM(if [In Current Period?] then [Gross Sales] END)
-ZN(SUM(if [In Current Period?] then [Promotions] END))
-ZN((if attr([In Current Period?]) then SUM([Adjustments].[Refunds]) END))
-ZN(SUM(if [In Current Period?] then [OrderTax] END))
-ZN(SUM(if [In Current Period?] then [Shipping Tax] END))
我可以得到 % Diff Net Sales
的值。但是,该值似乎是错误的。这似乎是因为 Current Period Sales 和 Prior Period Sales 值存在差异,如下图所示。在一个 sheet 中,我得到了正确的值,但在另一个中,我得到了错误的值。(我使用参数选择了 2021 年 1 月作为当前时间段)
这些是正确的值。
这些是错误的值,因此得到错误的 % Diff Net Sales 值。
这可能是什么原因,我该如何解决?
将日期代入净销售额计算中。
SUM(if [In Current Period?] then [Gross Sales] END)
-ZN(SUM(if [In Current Period?] then [Promotions] END))
-ZN(SUM(if [In Current Period?] then [Refund_Amount] END))
-ZN(SUM(if [In Current Period?] then [OrderTax] END))
-ZN(SUM(if [In Current Period?] then [Shipping Tax] END))
和
SUM(if [In Prior Period?] then [Gross Sales] END)
-ZN(SUM(if [In Prior Period?] then [Promotions] END))
-ZN(SUM(if [In Prior Period?] then [Refund_Amount] END))
-ZN(SUM(if [In Prior Period?] then [OrderTax] END))
-ZN(SUM(if [In Prior Period?] then [Shipping Tax] END))
这样就可以了。
% 净销售额差异:([Current Period Sales]-[Prior Period Sales]) /[Prior Period Sales]
我正在尝试计算当前期间和上一期间净销售额的百分比差异。我能够计算未聚合的度量的百分比差异。但是,就我而言,净销售额是根据以下公式计算得出的,这使它成为一个汇总指标:
SUM([Gross Sales])-ZN(SUM([Promotions]))-ZN(SUM([Refund_Amount]))-ZN(SUM([OrderTax]))-ZN(SUM([Shipping Tax]))
下面是我正在使用的其他公式
前期销售额:IF ATTR([In Prior Period?]) THEN [Net Sales] END
本期销售额:IF ATTR([In Current Period?]) THEN [Net Sales] END
% 净销售额差异:([Current Period Sales]-[Prior Period Sales]) /[Prior Period Sales]
但是,我没有得到 % Diff Net Sales
的任何值。但是,当使用非聚合度量时,说单位销售额而不是净销售额,我得到了正确的值。
在这种情况下,我使用公式:
Current period sales: SUM(IF [In Current Period?] = True THEN [Unit Sales] END)
这些是我正在使用的计算和数据结构。(前面带有 # 的字段是计算字段,因此是聚合字段)
感谢您对此问题的帮助。 高里
我尝试了以下计算当期销售额的公式:
(退款来自混合数据源,因此略有不同)
SUM(if [In Current Period?] then [Gross Sales] END)
-ZN(SUM(if [In Current Period?] then [Promotions] END))
-ZN((if attr([In Current Period?]) then SUM([Adjustments].[Refunds]) END))
-ZN(SUM(if [In Current Period?] then [OrderTax] END))
-ZN(SUM(if [In Current Period?] then [Shipping Tax] END))
我可以得到 % Diff Net Sales
的值。但是,该值似乎是错误的。这似乎是因为 Current Period Sales 和 Prior Period Sales 值存在差异,如下图所示。在一个 sheet 中,我得到了正确的值,但在另一个中,我得到了错误的值。(我使用参数选择了 2021 年 1 月作为当前时间段)
这些是正确的值。
这可能是什么原因,我该如何解决?
将日期代入净销售额计算中。
SUM(if [In Current Period?] then [Gross Sales] END)
-ZN(SUM(if [In Current Period?] then [Promotions] END))
-ZN(SUM(if [In Current Period?] then [Refund_Amount] END))
-ZN(SUM(if [In Current Period?] then [OrderTax] END))
-ZN(SUM(if [In Current Period?] then [Shipping Tax] END))
和
SUM(if [In Prior Period?] then [Gross Sales] END)
-ZN(SUM(if [In Prior Period?] then [Promotions] END))
-ZN(SUM(if [In Prior Period?] then [Refund_Amount] END))
-ZN(SUM(if [In Prior Period?] then [OrderTax] END))
-ZN(SUM(if [In Prior Period?] then [Shipping Tax] END))
这样就可以了。
% 净销售额差异:([Current Period Sales]-[Prior Period Sales]) /[Prior Period Sales]