Powerpivot平均值,仅显示一系列行

时间:2016-01-15 21:31:03

标签: excel average powerpivot dax

我已经完成了苹果的平均价格计算。 See example

在新专栏" testar"中,我只想显示1990 - 1994年(黄色单元格),因为其他年份未在我的公式中指定。 用于平均计算的公式是:

=CALCULATE (
AVERAGEX (Datasrc; Datasrc[C_P2] );
DATESBETWEEN(Datasrc[Year];"1990-01-01";"1994-01-01")
)

任何想法或建议怎么做?

2 个答案:

答案 0 :(得分:3)

您需要在IF()中测试Datasrc [Year]的值。

以下是使用虚拟数据集的示例。

Testar = 
IF(
    MAX( DimDate[Year] ) > 2010
        && MAX( DimDate[Year] ) < 2014
    ,[SumAmt]
)

我们正在测试MAX()DimDate [Year]。在任何给定的轴上,只有一年在上下文中,因此max是该轴上的年份。

您使用的度量计算您定义的5年内容中的平均值,覆盖当前过滤器上下文的任何内容。

此外,在这种情况下,AVERAGEX()是不必要的;你可以使用AVERAGE(Datasrc [C_P2])。

enter image description here

答案 1 :(得分:0)

差不多,感谢您的宝贵意见并让我朝着正确的方向前进!!!,因为我年份表的格式不同,我希望列出的平均价格我做了一点点不同。我只是将您的公式与我的 平均公式 结合起来,得到了我想要的结果。 {{3}}

使用的代码:

var bar2 = svg.selectAll("g.bar")
    .data(data)
    .enter()
    .append("g")
    .attr("transform", function(d, i) { return "translate(0," + i * barHeight + ")"; });

var bar = svg.selectAll("g.bar")
    .data(data)
    .enter()
    .append("g")
    .attr("transform", function(d, i) { return "translate(0," + i * barHeight + ")"; });

公式的第一部分仅取出我感兴趣的年份。 公式的第二部分[CALCULATE(AVERAGEX ....)计算我感兴趣的年份的平均值。