我有以下数据:

DATE        COUNTRY     ITEM        Value
2005-01-01  UK          op_rate     30%
2005-01-01  UK          proc        1000
2005-01-01  UK          export      750 
2005-01-01  ITA         op_rate     45%
2005-01-01  ITA         proc        500 
2005-01-01  ITA         export      350

基本上,数据是普通格式,包括比率(op_rate)和其他项目,例如导出的卷和已处理的卷(“ proc”)。

我需要按SUM汇总“ proc”和“ export”,而不是“ op_rate”,为此我需要按“ proc”进行加权平均。

在这种情况下,总的op_rate为:0.45 * 500 + 0.30 * 1000 = 0.35 //而不是.75 SUM或0.375 AVERAGE

我发现加权平均值的所有示例均跨度量,但没有一个涵盖其他维度。

任何帮助最欢迎!

#1楼 票数:1 已采纳

我了解您不愿意更改模型。 这里的问题是您正在尝试使用高度归一化的表,并使用它来使用OLAP工具进行分析。 OLAP工具更喜欢Fact / Dim星型架构,而Tabular / PowerBI也不例外。 我怀疑这也将继续困扰着未来的需求。 立即尝试改变结构是最好的时机,因为您离开的时间越长,难度就越大。

这并不是说您无法使用这些工具执行所需的操作,但是由此产生的dax效率会降低,并且所需的存储将不是最佳的。

因此,在给出了警告/演讲(!)的情况下,您可以执行以下操作。

op_rate_agg =
VAR pivoted =
    ADDCOLUMNS (
        SUMMARIZE ( 'Query1', Query1[COUNTRY], Query1[DATE] ),
        "op_rate", CALCULATE ( AVERAGE ( Query1[Value] ), Query1[ITEM] = "op_rate" ),
        "proc", CALCULATE ( SUM ( Query1[Value] ), Query1[ITEM] = "proc" )
    )
RETURN
    DIVIDE ( SUMX ( pivoted, [op_rate] * [proc] ), SUMX ( pivoted, [proc] ) )

这确实是低效的,因为它每次执行时都必须构建透视集,并且您将看到查询计划必须比将其坚持为适当的事实表来做更多的工作。 如果您的模型很大,则此度量及其引用的任何度量都可能存在性能问题。

#2楼 票数:0

@RADO是正确的。 您绝对应该旋转您的ITEM列来实现这一目标。

透视型

然后可以将op_rate的加权平均值简单地写为

= DIVIDE(
      SUMX(Table3, Table3[op_rate] * Table3[proc]),
      SUMX(Table3, Table3[proc]))

  ask by vale_p translate from so

未解决问题?本站智能推荐:

1回复

DAX建议在PowerBI中生成特定的加权平均度量?

我正在尝试在PowerBi中为调查数据制定加权平均数。 我目前有以下两个表(简化): 调查数据 权重 目前, 'surveydata'[How would you score the service?]和'weights'[weight] 。 我尝试计算的加权平均公
1回复

DAX中半加性和的平均值

我有一个存储项目的事实表,管理项目的公司以及应该向项目公司收费的公司: 现在我想设计一个如下工作的度量: 在项目中,将百分比相加 在项目中,平均总和百分比(或MAX,这应该没有任何区别,因为所有项目总共应该加起来为100%) 因此,如果我在Excel(2010)
1回复

如何使用 DAX 计算 Power BI 中的加权平均值?

我的数据表如下所示: 我想找到由 4 个步骤组成的加权平均值 即使它是在 EXCEL 上完成的,我也无法在 Power BI 中执行此操作。 有人可以帮我吗?
7回复

计算大数的加权平均值

我想要得到几个数字的加权平均值。 基本上我有: 可以有少至一两个或多达五十或六十对价格和数量。 我需要弄清楚价格的加权平均值。 基本上,加权平均值应该给对象提供非常小的权重 以及更多对上面的那对。 我现在的公式是: 到目前为止,我做到了这一点: 问题是
1回复

使用聚合的加权平均值

很抱歉问了一个可能是非常基本的问题,但我陷入了一个难题,似乎无法摆脱它。 我有一个看起来像的代码 其中前三个是研究领域,第四个变量是性别。 显然还有更多的观察。 我想得到的是研究领域(医学、生物学、商业)的平均水平,按性别(男性的平均值和女性的平均值)。 为此,我使用了以下代码: 这完美地
2回复

循环除以加权平均值

考虑以下数据: 我知道我的名字约定有点混乱。 现在,我想计算迈克尔的加权平均值。 那是: 有可能通过循环进行该计算吗? 因为我有2个以上的合并数据,所以应该将Tom的数据与之合并。
1回复

PyTorch 张量的加权平均值

我有两个 [y11, y12] 和 [y21, y22] 形式的 Pytorch 张量。 如何获得两个张量的加权平均值?
2回复

加权平均值和评级

数学不是我的强项,我在这里茫然。 基本上,我所需要的只是一个简单的公式,它将以1到5的比例给出加权评级。如果选票很少,则它们的影响较小,而评级则更倾向于平均水平(在这种情况下,我希望它能够为3,而不是所有其他评分的平均值)。 我已经尝试了几种不同的贝叶斯实现,但是这些还没有解决。