获得excel中的平均排名

问题描述 投票:0回答:2

我有一个基于日期的列列表

property | 2023-04-10 | 2023-04-11 | 2023-04-12
A        |    0:10    |    0:20    |   0:30
B        |    0:05    |    0:12    |   0:35
C        |    0:02    |    0:10    |   0:40

我想计算一个具有平均排名的列,即

property | average_rank
A        |     (1+1+3)/3
B        |     (2+2+2)/3
C        |     (3+3+1)/3

我如何在 excel 中实现这一点,还有一些单元格有空白条目,在这种情况下,我不想在计算平均排名时考虑该单元格

有100列,所以我不能在平均函数中一一输入

excel ranking
2个回答
0
投票

结合Microsoft-365的最新功能可能有效。

=BYROW(
MAP(B2:D4,LAMBDA(x,RANK(x,INDEX(B2:D4,,COLUMN(x)-COLUMN(A2))))),
LAMBDA(rw,AVERAGE(rw))
)


0
投票

您可以尝试以下操作,假设您的问题中列出的标签没有 Excel 版本限制

=LET(in,B2:D4,BYROW(MAKEARRAY(ROWS(in),COLUMNS(in), LAMBDA(i,j,
 RANK(INDEX(in,i,j),INDEX(in,,j)))),LAMBDA(z, AVERAGE(z))))

这里是输出:

MAKEARRAY
迭代输入的所有元素 (
in
) 并计算给定元素 (
RANK
,
i
) 相对于
j
的列
j
in
。然后我们在
BYROW
结果上调用
MAKEARRAY
来计算每一行的平均值。

© www.soinside.com 2019 - 2024. All rights reserved.