Как получить среднее значение с интервалами?

Итак, у меня есть набор данных о ежемесячной доходности акций с января 2000 года по сегодняшний день для шести различных фондовых индексов. Внизу страницы я хочу показать доходность за год в процентах. Когда я набрал «=average(B8:B19)» в Excel, он правильно дал мне среднее значение за 2000 год, но когда я перетащил его вниз, я получил среднее значение за период с февраля 2000 года по январь 2001 года. Есть ли способ создать Формула такая, что когда первая ячейка вычисляет среднее значение за период с января 2000 г. по декабрь 2000 г., вторая ячейка вычисляет период с января 2001 г. по декабрь 2001 г., третья ячейка вычисляет среднее значение с января 2002 г. по декабрь 2002 г. и т. д.? Таким образом, мне не нужно вручную вводить диапазоны ячеек для каждого года и избежать человеческой ошибки.

Я приложил изображение моего набора данных. Если кто-нибудь сможет написать данные в Excel или помочь мне понять, как их написать, я был бы очень признателен! Среднее значение за 2000 год будет отображаться в ячейке b256, за 2001 год — в b257 и т. д.

1 ответ

Вы можете использоватьSUMPRODUCTв обычной формуле:

      =SUMPRODUCT((A29=YEAR($A$2:$A$25))*$B$2:$B$25)/SUMPRODUCT(--(A29=YEAR($A$2:$A$25)))

илиAVERAGE+IFв формуле массива:

      =AVERAGE(IF(A29=YEAR($A$2:$A$25),$B$2:$B$25))

Формула массива после редактирования подтверждается нажатиемctrl+shift+enter

Другие вопросы по тегам