PowerPivot:如何识别计算列中每组的最大值

Posted

技术标签:

【中文标题】PowerPivot:如何识别计算列中每组的最大值【英文标题】:PowerPivot: How to identify Max Value per Group in a Calculated Column 【发布时间】:2015-04-07 16:28:44 【问题描述】:

我正在 Power Pivot for Excel 2013 中构建数据模型,并且需要能够识别特定组的列中的最大值。不幸的是,我认为可行的内容以及我之前搜索过的内容给了我一个错误或不适用(有一个类似的问题处理计算的度量而不是列,并且不能在 Power Pivot 数据视图中复制到最好的我的知识)

我在下面包含了我想要实现的目标的指示,在这种情况下,我正在尝试计算 Max % uptake 列。

Group | % uptake | Max % uptake            

A            40          45      
A            22          45                        
A            45          45                       
B            12          33                       
B            18          33                                   
B            33          33                       
C            3           16                       
C            16          16                                  
C            9           16 

非常感谢

【问题讨论】:

【参考方案1】:

使用

=CALCULATE(MAX([UPTAKE]),FILTER(Table1,[GROUP]=EARLIER([GROUP])))

【讨论】:

这很好用,并向我介绍了非常有用的 EARLIER 函数,我将继续在这个项目中广泛使用它。非常感谢。虽然,将“”替换为“[”以使其正常工作。【参考方案2】:

在单元格(“C2”)中使用此公式:

=MAX(INDIRECT(CONCATENATE("B",MATCH(A2,$A$1:$A$10,0),":B",SUMPRODUCT(MAX(($A$1:$A$10=A2)*(ROW($A$1:$A$10)))))))

【讨论】:

嗨 Mohammed,感谢您的回复,但这似乎是针对 Excel 而不是 Power Pivot,不过还是谢谢。

以上是关于PowerPivot:如何识别计算列中每组的最大值的主要内容,如果未能解决你的问题,请参考以下文章

sql SQL中每组的第一个/最小/最大行数

如何选择每组的前两行并在一列中计算它们之间的差异?

data.frame 中每组的平均值

成绩计算实例

检查每组的另一列中是不是存在列值

oracle 查询每组的最大值