Как я могу рассчитать средневзвешенное значение на листах Google на основе условия?

Я хотел узнать ненулевое средневзвешенное значение из 2 массивов в листах Google - средневзвешенное значение/сумма должно рассчитываться только тогда, когда значение в столбце A не равно нулю.

Я не могу изменить или удалить данные — это может решить только формула.

+----------+--------+
| Products | Orders |
+----------+--------+
|        5 |   1200 |
|        0 |   3497 |
|       14 |   1234 |
|       13 |    422 |
|        4 |   2444 |
|       21 |  13234 |
+----------+--------+

Желаемый результат = (5*1200 + 14*1234 + 13*422 + 4*2444 + 21*13234) / (1200 + 1234 + 422 + 2444 + 13234)

^^ Веса — это заказы и заказы, в которых продукты = 0 (т. е. 2-я запись) не будут учитываться в базе.


person mark0018    schedule 09.05.2020    source источник
comment
Пожалуйста, укажите желаемый результат   -  person Rocky    schedule 09.05.2020
comment
Привет, я обновил желаемый результат   -  person mark0018    schedule 09.05.2020


Ответы (2)


Основывайтесь на своем желаемом результате, вы можете попробовать формулу ниже

=sumproduct((A2:A)*(B2:B))/sumif(A2:A,">0",B2:B)
person Rocky    schedule 09.05.2020

если веса находятся в столбце A, то:

=AVERAGE.WEIGHTED(FILTER(B:B, A:A<>0), FILTER(A:A, A:A<>0))

0

person player0    schedule 09.05.2020