在 Excel 中仅获取真实值的中位数

在 Excel 中仅获取真实值的中位数

在我的 Excel 中,我对median和做了一些计算average

现在我想要获取median前 20percentile条记录(A 列和 B 列,总共约 5000 行):

3310        TRUE
2250        TRUE
2161        FALSE

使用以下公式来获取前 20 名percentile

=A1>=PERCENTILE(A1:A5000;0,8)

现在,我如何获取median将 B 列设置为TRUE

对于平均值我可以做到,=AVERAGE.IF(B1:B5000;TRUE;A1:A5000)但对于中位数则不行。

答案1

没有单独的函数可以实现这一点,但我们可以使用嵌套公式。
请记住,这是一个数组公式,因此请使用 Ctrl、Shift 和 Enter。

将其用于百分位数(不是数组公式):

=IF(A1>=PERCENTILE($A$1:$A$5000;0,8);"TOP";"NOT")

这是真的

= MEDIAN(IF(B1:B5000="TOP";A1:A5000))

这是 FALSE

= MEDIAN(IF(B1:B5000="NOT";A1:A5000))

记住 Ctrl、Shift 和 Enter。

相关内容