У меня есть (большой) массив данных в Excel, из которого мне нужно вычислить среднее значение определенных значений в одном столбце на основе значений другого колонка. Например, вот отрывок из моих данных:Взятие среднего значения в одном столбце Excel на основе значений в другом
Так конкретно, я хочу взять среднее значение F635 средних значений, соответствующих значениям Ряд 1. Для того, чтобы сделать шаг дальше, я хочу это продолжать Роу значение 2, строку значения 3 и т.д.
Я не знаком с тем, как запускать код в Excel, но попытался решить эту проблему с помощью следующих действий:
=IF($C = "1", AVERAGE($D:$D), "")
который (к моему пониманию) можно интерпретировать d как «если значения (в любом месте) в столбце C равны 1, тогда возьмите среднее значение соответствующих значений в столбце D.»
Конечно, по мере того как я пытаюсь это, я получаю формулу ошибки из Excel.
Любое руководство будет невероятно оценено. Заранее спасибо.
Для скорости и простоты использования всегда следует использовать Averageif/s или SUMIF/s вместо формул массива. Вы правы, что бывают случаи, когда они не будут работать, и нужна формула массива. Формулы массива используют множество вычислительных итераций, где нет стандартных формул. Именно поэтому нет никакого вреда для полных ссылок на столбцы в AVERAGEIF, но в формулах массива. Также вы можете просто обойти сумму/счетчик с помощью этой формулы массива: «AVERAGE (IF (A1: A23 = 1, B1: B23))' Каждый раз, когда делается другая ссылка, требуется больше вычислений и еще более замедляет формулу. –
Также AVERAGEIFS() будет иметь дело с несколькими критериями «AVERAGEIFS (C: C, A: A,« apple », B: B,« green ») –