使用多个条件计算 MAX 连续值
Count MAX consecutive values with multiple criteria
我想获取最大连续值以使用多个条件进行计数。我在网上找到了这个公式
=ArrayFormula(MAX(FREQUENCY(IF($B:$B="WIN",ROW($B:$B)),IF($B:$B<>"WIN",ROW($B:$B)))))
它对一个标准非常有效,单独计算 "win" and/or "buy"。但是我想在同时满足 2 个条件时获得最大连续计数,有点交叉引用。
就像上面的例子一样,我想要最大连续计数 "buy" 本身是 5,而 "win" 本身是 4。但是我想要最大连续计数一起出现,在上面的例子中只有2次。
我尝试以不同的方式修改这个公式,但从未得到正确的结果。
这里是sample doc。
您必须将 "Buy" 和 "Win" 的条件与数组公式中的乘法相结合以获得 AND。然后您需要在 FREQUENCY 的第二部分取反该表达式。您可以将 NOT 与相同的表达式一起使用:
=ArrayFormula(MAX(FREQUENCY(IF((A2:A="Buy")*($B:$B="WIN"),ROW($B:$B)),IF(not((A2:A="Buy")*($B:$B="WIN")),ROW($B:$B)))))
或者使用一些布尔逻辑通过加法将其转换为 OR 表达式,如下所示:
=ArrayFormula(MAX(FREQUENCY(IF((A2:A="Buy")*($B:$B="WIN"),ROW($B:$B)),IF((A2:A<>"Buy")+($B:$B<>"WIN"),ROW($B:$B)))))
我想获取最大连续值以使用多个条件进行计数。我在网上找到了这个公式
=ArrayFormula(MAX(FREQUENCY(IF($B:$B="WIN",ROW($B:$B)),IF($B:$B<>"WIN",ROW($B:$B)))))
它对一个标准非常有效,单独计算 "win" and/or "buy"。但是我想在同时满足 2 个条件时获得最大连续计数,有点交叉引用。
就像上面的例子一样,我想要最大连续计数 "buy" 本身是 5,而 "win" 本身是 4。但是我想要最大连续计数一起出现,在上面的例子中只有2次。
我尝试以不同的方式修改这个公式,但从未得到正确的结果。
这里是sample doc。
您必须将 "Buy" 和 "Win" 的条件与数组公式中的乘法相结合以获得 AND。然后您需要在 FREQUENCY 的第二部分取反该表达式。您可以将 NOT 与相同的表达式一起使用:
=ArrayFormula(MAX(FREQUENCY(IF((A2:A="Buy")*($B:$B="WIN"),ROW($B:$B)),IF(not((A2:A="Buy")*($B:$B="WIN")),ROW($B:$B)))))
或者使用一些布尔逻辑通过加法将其转换为 OR 表达式,如下所示:
=ArrayFormula(MAX(FREQUENCY(IF((A2:A="Buy")*($B:$B="WIN"),ROW($B:$B)),IF((A2:A<>"Buy")+($B:$B<>"WIN"),ROW($B:$B)))))