在 Power BI 中计算比率时加 1 过滤器不起作用
Filter does not work when adding 1 in calculating ratio in Power BI
我有一个包含两个值的切片器:Office 1
和 Office 2
此计算工作正常,并在 Office 1
下为我提供了正确的过滤除法
Retention Ratio = DIVIDE(([RenewalRewritePremium] - [PY Premium]) , [PY Premium])
但是,只要我在 DIVIDE
函数之前或之后添加 1
,它就会带来所有分区,无论在切片器中选择什么 Office:
Retention Ratio = 1 + (DIVIDE(([RenewalRewritePremium] - [PY Premium]) , [PY Premium]))
100%的分区不应该显示,因为它们不属于Office 1
我无法重现您的错误。这应该是这样工作的:
所以错误不在切片器或计算中。
您的计算是 Column 而不是度量,对吗?
错误似乎在其他地方。我的猜测是您的 Office 1
值与您的值(地震、恐怖主义、风)没有关联。
我想 [PY Premium] 应该 return "Earthquake"、"Terrorism" 和 "Wind" 没有价值。在那种情况下,DIVIDE
returns BLANK
因为分母是 BLANK
.
然后,度量值 1 + BLANK
。 BLANK
与数字相加时会转换为 0
。因此它实际上计算 1 + 0
和 returns 1
.
为了解决这个问题,您可以使用一个变量来保存[PY Premium]的结果,并且只在[PY Premium]不为空时才计算比率。
Retention Ratio =
VAR PYPremium = [PY Premium]
RETURN IF(
NOT ISBLANK( PYPremium ),
1 + DIVIDE( [RenewalRewritePremium] - PYPremium, PYPremium )
)
话虽如此,上面的计算实际上看起来 return 与此相同的结果。而且这不会导致 returning 100% for irrelevant Division.
Retention Ratio = DIVIDE( [RenewalRewritePremium], [PY Premium] )
我有一个包含两个值的切片器:Office 1
和 Office 2
此计算工作正常,并在 Office 1
Retention Ratio = DIVIDE(([RenewalRewritePremium] - [PY Premium]) , [PY Premium])
但是,只要我在 DIVIDE
函数之前或之后添加 1
,它就会带来所有分区,无论在切片器中选择什么 Office:
Retention Ratio = 1 + (DIVIDE(([RenewalRewritePremium] - [PY Premium]) , [PY Premium]))
100%的分区不应该显示,因为它们不属于Office 1
我无法重现您的错误。这应该是这样工作的:
所以错误不在切片器或计算中。
您的计算是 Column 而不是度量,对吗?
错误似乎在其他地方。我的猜测是您的 Office 1
值与您的值(地震、恐怖主义、风)没有关联。
我想 [PY Premium] 应该 return "Earthquake"、"Terrorism" 和 "Wind" 没有价值。在那种情况下,DIVIDE
returns BLANK
因为分母是 BLANK
.
然后,度量值 1 + BLANK
。 BLANK
与数字相加时会转换为 0
。因此它实际上计算 1 + 0
和 returns 1
.
为了解决这个问题,您可以使用一个变量来保存[PY Premium]的结果,并且只在[PY Premium]不为空时才计算比率。
Retention Ratio =
VAR PYPremium = [PY Premium]
RETURN IF(
NOT ISBLANK( PYPremium ),
1 + DIVIDE( [RenewalRewritePremium] - PYPremium, PYPremium )
)
话虽如此,上面的计算实际上看起来 return 与此相同的结果。而且这不会导致 returning 100% for irrelevant Division.
Retention Ratio = DIVIDE( [RenewalRewritePremium], [PY Premium] )