加权平均值在当天更新

时间:2018-05-19 14:34:55

标签: excel average weighted-average

我想计算一组数据的加权平均值。 在每个时间块结束时,将输入一个值。 时间块的价值不同,时间A为2.5小时,时间B为3.5小时,时间C为3小时。

我希望平均值包含一个包含0的单元格。 我希望平均值不包括空单元格,因此在计算中不包括该时间块。

因此,使用下面的示例,由于时间C为空,我希望它使用2.5和3.5进行加权平均值9和3,因此忽略空白单元格和3.0。

如果时间C表示0,我希望它在2.5,3.5和3的情况下加权平均值为9,3和0.

Spreadsheet

= AVERAGE(C3:C5)没有考虑时间块的权重,忽略空白单元格并在计算中包含0。

= SUMPRODUCT(C3:C5,A3:A5)/ SUM(A3:A5)考虑了权重但是如果一个单元格为空白仍然除以3个时间块的总和,当时只有1或2个时间块适用。

= AVERAGEIF(C3:C5,“<> 0”)没有考虑时间块的权重,忽略空白单元格并且在计算中包括0。

什么公式会考虑权重,在计算中包括0并忽略空白单元格及其关联的时间块?

基本上我想要一个公式,当数据输入上面的行时,它会将平均值更新为当天的当前平均值。

1 个答案:

答案 0 :(得分:0)

我在想,可能有一种更聪明的方法可以做到这一点,例如:与聚合,但这肯定是一种方式

=SUMPRODUCT(C3:C5*A3:A5)/SUMPRODUCT(A3:A5*(C3:C5<>""))

这有点容易

=SUMPRODUCT(C3:C5*A3:A5)/SUMIF(C3:C5,"<>",A3:A5)