Страницы: 1
RSS
Посчитать медиану внутри диапазона с заданными границами
 
Добрый вечер!
Прошу подсказать, как можно посчитать медиану внутри диапазона с заданными границами.
Думаю, файл примера, который я приложила к сообщению, проиллюстрирует задачку лучше текстового описания :)
Изменено: vikttur - 07.06.2021 20:48:44
 
В лоб можно так:
Код
=МЕДИАНА(ИНДЕКС($A$2:$A$10241;СУММПРОИЗВ(МИН(ЕСЛИ(($B$2:$B$10241>=E5);(СТРОКА($B$2:$B$10241)))))):ИНДЕКС($A$2:$A$10241;СУММПРОИЗВ(МАКС(ЕСЛИ(($B$2:$B$10241<=E6);(СТРОКА($B$2:$B$10241)))))))
можно убрать СУММПРОИЗВ и вводить как формулу массива(тремя клавишами Ctrl+Shift+Enter)
Код
=МЕДИАНА(ИНДЕКС($A$2:$A$10241;МИН(ЕСЛИ(($B$2:$B$10241>=E5);(СТРОКА($B$2:$B$10241))))):ИНДЕКС($A$2:$A$10241;МАКС(ЕСЛИ(($B$2:$B$10241<=E6);(СТРОКА($B$2:$B$10241))))))
плюс надо будет добавить время "пустышку", чтобы правильно рассчитать последний период.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Дмитрий(The_Prist) Щербаков, большое спасибо!
Только почему-то не желает считать для части окон (выделили жёлтым), хотя данные в диапазонах, задаваемых этими окнами в массиве есть
Изменено: vikttur - 07.06.2021 22:04:39
 
Цитата
Людмила Рощина написал:
хотя данные в диапазонах, задаваемых этими окнами в массиве есть
Нет окончаний диапазонов, вот второй ИНДЕКС и вываливается в ошибку
 
bigorq, к сожалению, не очень поняла, что вы имеете в виду. Не могли бы вы посмотреть файл примера, пожалуйста?
 
Рассмотрим G18. Формула должна считать медиану с 14:15 по 14:30, а данные в столбце B заканчиваются на 14:23
Второй ИНДЕКС в формуле не может вычислить нужную ячейку и формула выдает ошибку. был не прав, Если подправить формулу с учетом того что диапаон не с 1 ой строки, то работает
==MEDIAN(INDEX($A$2:$A$10241;MIN(IF(($B$2:$B$10241>=E5);(ROW($B$2:$B$10241)-1)))):INDEX($A$2:$A$10241;MAX(IF(($B$2:$B$10241<=E6);(ROW($B$2:$B$10241)-1)))))
Изменено: bigorq - 07.06.2021 23:33:44
 
Массивная
=MEDIAN(IF(($B$2:$B$10241>=E5)*($B$2:$B$10241<=E5+"0:15");$A$2:$A$10241))
По вопросам из тем форума, личку не читаю.
 
FYI ничьё решение не помогло (вероятно, никто не пробовал проверять на реальных данных), но всё равно всем спасибо!
 
Цитата
Людмила Рощина написал:
ничьё решение не помогло
откуда такой вывод? Чем именно не подошло ни одно решение? Я привел формулы для понимания принципа. Если чуть подогнать:
Код
=МЕДИАНА(ИНДЕКС($A$1:$A$10241;СУММПРОИЗВ(МИН(ЕСЛИ(($B$2:$B$10241>=E5);(СТРОКА($B$2:$B$10241)))))):ИНДЕКС($A$1:$A$10241;СУММПРОИЗВ(МАКС(ЕСЛИ(($B$2:$B$10241<=E6);(СТРОКА($B$2:$B$10241)))))))
все вычисляется. Только как и прежде - не мешало бы какой-то ограничитель на последнее значение задать.
Чем не подходит? Мне для себя понять.
Изменено: Дмитрий(The_Prist) Щербаков - 08.06.2021 13:33:13
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Дмитрий(The_Prist) Щербаков, проверила по вашей формуле ещё раз - действительно считает. Возможно, я заметила, что после определённого окна получаются одинаковые медианы, и не догадалась, что для данных окон нет значений в диапазоне.
В общем, решение найдено, спасибо!
Страницы: 1
Наверх