使用Excel中的数组公式对问题进行索引
我是新来的Excel中的数组公式,并且我的大脑已经在R中训练了太久,所以如果这个问题很简单或者太具体,我很抱歉。 我有这样的数据:
ID Iteration Value Group1 Group2 2 1 100 0 0 2 2 85 1 0 2 3 28 0 0 3 1 94 1 0 5 1 83 0 1 5 2 50 1 1 6 1 94 0 0 6 2 28 1 0
我想使用数组公式来以不同的方式查询数据。 我要:
- 对于每个ID,find第一个具有Group1 = 1的迭代。
- 对于每个ID,Group1 = 1时的最大值是多less?
- 对于每个ID,当Group1 = 1时,Group1 = 1的迭代次数达到最大值。
我已经想通过如下方式来指定每个ID的最大值: {=MAX(IF(A:A=A2,C:C))}
任何援助将不胜感激。 到目前为止,我已经经历了一些快速教程,并且愿意浏览其他您可能了解的优秀资源。
看看这个,告诉我你的想法 – 特别是问题3
我的设置看起来像这样
所有公式都会拖下来,如下所示:
B14中的公式(问题1)
{=INDEX($B$2:$B$9,MATCH(1,($A$2:$A$9=A14)*($D$2:$D$9=1),0))}
G14中的公式(问题2)
{=MAX(($A$2:$A$9=$F14)*($D$2:$D$9=1)*$C$2:$C$9)}
K14中的公式(问题3)
{=SUM(($A$2:$A$9=J14)*($C$2:$C$9=G14)*$B$2:$B$9)}
更新
如果您想知道在ID = 2中Group1 = 1的次数达到我们在问题2中find的ID = 2的最大值,那么我会这样做:
将另一列添加到您的数据,我标记它:组1通过 。 把它放在新的列F2
,然后向下拖动。
=COUNTIFS($A$2:A2,A2,$D$2:D2,1)
然后您可以在K14
使用以下内容
=SUM(($A$2:$A$9=J14)*($C$2:$C$9=G14)*($D$2:$D$9=1)*$F$2:$F$9)