如何计算 DAX 中的累计总数和百分比?

How to calculate cumulative Total and % in DAX?

这可能很简单...

我在 Power BI 中有以下摘要 table,需要构建帕累托图,我正在寻找一种创建列 "D" 和 "E" 的方法。 .. 提前致谢!

"B" 列中的计数是我在 PBI 中基于多个过滤器创建的度量。我已经尝试了一些 Calculate/Sum/Filter 类型的表达式,但没有成功。

我的原始数据看起来像图片 #2...我有办法构建摘要 table,但列 "I" - 运行 % -(为此我还需要每个桶的累计事件总数)。

遗憾的是,我未能成功应用 DAXPATTERNS 的计算。

DAXPATTERNS 博客中有一个众所周知的累积计算模式。

Running % 度量试试这个表达式:

Running % =
CALCULATE (
    SUM ( [Percentage] ),
    FILTER ( ALL ( YourTable), YourTable[Bucket] <= MAX ( YourTable[Bucket] ) )
)

并试试这个作为累积计数度量:

Cumulative Count =
CALCULATE (
    SUM ( [Count] ),
    FILTER ( ALL ( YourTable ), YourTable[Bucket] <= MAX ( YourTable[Bucket] ) )
)

基本上,在每一行中,您要对小于或等于评估行中存储桶值的那些计数值或百分比值求和,从而产生累计总数。

更新: 与您的模型匹配的可能解决方案。

假设您的事件计数度量定义如下:

Event Count = COUNT(EventTable[Duration_Bucket])

您可以使用 CALCULATE 函数创建累积计数,这样我们就可以计算 Running % 度量:

Cumulative Count =
CALCULATE (
    [Event Count],
    FILTER (
        ALL ( EventTable ),
        [Duration_Bucket] <= MAX ( EventTable[Duration_Bucket] )
    )
)

现在使用以下方法计算 运行% 测量值:

Running % =
DIVIDE (
    [Cumulative Count],
    CALCULATE ( [Event Count], ALL ( EventTable ) ),
    BLANK ()
)

你应该在 Power BI 中得到这样的东西:

Table可视化

条形图可视化

请注意,我的表达式使用了 EventTable,您应该将其替换为您的 table 的名称。另请注意 running % 行从 0 到 1 并且左侧只有一个 Y 轴。

如果有帮助请告诉我。