【发布时间】:2023-01-30 16:59:04
【问题描述】:
我觉得我的问题应该很容易弄清楚,但我环顾四周,似乎无法找到如何获得产生最大值的基本数组溢出函数。这是我的简化数据集:
| Col A | Col B |
|---|---|
| Apple | 864 |
| Carrot | 189 |
| Pear | 256 |
| Apple | 975 |
| Pear | 873 |
| Carrot | 495 |
| Apple | 95 |
| Pear | 36 |
| Carrot | 804 |
我的目标是拥有一个唯一的食物列表(来自Col A),它返回来自Col B 的最大对应值。来自Col A 的unique 列表的公式很简单...=UNIQUE(filter(A:A,A:A<>"")),我正在努力的是获得一个动态的maxifs 来与此保持一致。
为了说明,如果我将唯一函数放在单元格D2 中(因此它会溢出到d4,如下面蓝色所示),正确对应的非数组函数将是=MAXIFS(B:B,A:A,D2)(如column e 所示)。我可以将它拖到剩余的行中,但我希望它是动态的,因为将来我的数据集中可能会有更多食物。
我会怎样预计工作是...=filter(MAXIFS(B:B,A:A,D2:D),D2:D<>""),但这会返回#Value!。相比之下,如果我使用 sumif/Average,=filter(SUMIF(A:A,D2:D,B:B),D2:D<>""),我得到了我期望的结果(这让我很困惑)。
有没有办法获得动态 maxifs(或任何在 E 列中产生相等值的函数),它会根据 D 列中的唯一值溢出?
【问题讨论】:
标签: sorting google-sheets max array-formulas google-query-language