Powerbi DAX按类别占总数的百分比
我有两个相同的表格图像和一个计算类别百分比的度量Powerbi DAX按类别占总数的百分比,powerbi,dax,Powerbi,Dax,我有两个相同的表格图像和一个计算类别百分比的度量 % = DIVIDE( [m_SalesValue] ,CALCULATE([m_SalesValue], ALLSELECTED('Table'[Category])) ,BLANK() ) 当我选择(突出显示)一个类别(例如香蕉)时,另一个视觉显示类别的意外百分比值。预期值为0.25,但显示为1.00。我应该如何修改度量以获得预期结果 让我们把挑战提升到更高的层次,假设这两种视觉效果最初都被一些未指定的维度交叉过
% =
DIVIDE(
[m_SalesValue]
,CALCULATE([m_SalesValue], ALLSELECTED('Table'[Category]))
,BLANK()
)
当我选择(突出显示)一个类别(例如香蕉)时,另一个视觉显示类别的意外百分比值。预期值为0.25,但显示为1.00。我应该如何修改度量以获得预期结果
让我们把挑战提升到更高的层次,假设这两种视觉效果最初都被一些未指定的维度交叉过滤过,比如fruits。这就是为什么我使用ALLSELECTED
而不是ALL
以下是源表:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WSiwoyElV0lEyVYrViVZKSswDQiDXAsxNzkgtKqoEcs3B3PLEktSi3NSc/DygkKGRUmwsAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Category = _t, SalesValue = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Category", type text}, {"SalesValue", Int64.Type}})
in
#"Changed Type"
您需要使用ALLEXCEPT并识别仍然要应用的交叉过滤器。您的示例建议使用“水果”,这就是我在下面介绍的内容
% =
DIVIDE(
[m_SalesValue]
,CALCULATE([m_SalesValue], ALLEXCEPT(Table, 'Table'[Fruits]))
,BLANK()
)
顺便说一句,以这种方式包含起始数据非常方便。
ALLEXCEPT
是否允许列出用户可能(但不是必须)最初筛选的所有潜在维度?不管怎样,它看起来很有希望:-)是的。ALLEXCEPT基本上是这样表述的:“清除除这些之外的所有过滤器”,然后您可以将它们列出。所以,可以包括现在没有被过滤的列,但将来可能会被过滤。需要注意的是,这一切都必须放在同一张桌子上,这可能会有点麻烦。