取平均值并忽略不同列中的重复结果

取平均值并忽略不同列中的重复结果

我有类似以下的数据;

symbol   returns
LYS.PA   0.001470588
PWG.PA   0.11875
BALYO.PA 0.240875912
ADVIC.PA 0.000712758
ADVIC.PA 0.000712758

我使用以下公式:

=AVERAGE(IF(FREQUENCY(Q2:Q6;Q2:Q6);Q2:Q6))

我想取平均值并跳过重复的行,因此ADVIC.PA只计算一次。

此公式有效,但我想使用symbol列作为重复行,而不是returns列。当我有多家回报率为 0 的公司时,我遇到了问题,上述公式将忽略所有这些问题。

答案1

我假设您有范围内的数据A2:B6

Unique Symbol         Value
LYS.PA            0.001470588
PWG.PA            0.11875
BALYO.PA          0.240875912
ADVIC.PA          0.000712758

Average:          0.090452315

获取唯一的符号列表在单元格中写入此数组公式,D2最后用Ctrl+Shift+Enter&填充。

{=IFERROR(INDEX($A$2:$A$6, MATCH(0,COUNTIF($D$1:D1, $A$2:$A$6), 0)),"")}

单元格中的公式E2并向下拖动:

=VLOOKUP(D2,A2:B6,2,FALSE)

要获得单元格中的平均值,E7请输入以下公式:

=AVERAGE(E2:E5)

笔记: 根据需要调整公式中的单元格引用。

相关内容