Есть параметр, который может флуктуировать в течение времени, но имеет некоторый тренд на различном отрезке времени. Например температура. Измерения происходят нерегулярно, т.е. где-то может быть два измерения в сутки, где-то ежеминутно.
Получается примерно такая таблица
hall 08:30 +10.1
hall 08:35 +10.0
room 09:15 +11.1
hall 09:55 +11.3
hall 09:45 +11.0
hall 10:00 +13.0
hall 10:01 +11.5
hall 10:03 +11.2
room 12:02 +12.5
Температура измеряется в нескольких помещениях и очень важно показывать (предсказывать) температуру. То, что мне пришло в голову, это применение некоторого взвешивающего коэффициента, распеределенного на определенную глубину актуальности временного отрезка.
Например, изменение температуры может быть актуально в течение часа. Например, если мы начнем измерять температуру в 10:05, то можем получить достаточно адекватное значение температуры, т.к. датчик имеет погрешность и выдает слегка отличающиеся результаты. Просто усреднив значения мы не получим правильную картину.
Опять же, нельзя просто взять 5 последних значений, пример с комнатой показывает это.
Нужно выбирать значения, добавлять к каждому вес и делать вычисления. Плюс нужно как-то учесть выбросы вроде температуры в 10:00.
Т.е. простым взвешенным средним арифметическим не обойтись, насколько я понимаю. Либо считать в два прохода, потом вычислять девиацию для каждой точки и искать выколотые. Потом применять фильтрацию и после этого считать взвешенное арифметическое.
Какие еще существуют решения подобных задач?