Добрый вечер.
Понимаю, что вопрос глупый и, возможно, я плохо гуглил, но решение нужно как можно быстрей, рассчитываю на понимание и помощь.
Есть список - последовательность значений. Скажем, изменение некого показателя за последний год. Нормальное значение для показателя до 30 (условно), но в некоторые дни года из-за некой аномалии значение могло неожиданно скакнуть до 5000, например, и выше. При том, что на следующий день значение снова нормальное. Таких проблемных дней в году могло быть штук 50.
Задача: на входе скормить список значений за год, т.е. [значение_день1, значение_день2, ..., значение_день365], а на выходе получить список ненормальных значений. Т.е. те значения, которые сильно отличаются от большинства.
Самое тупое, что пришло в голову, посчитать среднее арифметическое, например, на python
sum(values_list) / float(len(values_list))
Можно проверить на нормальность распределения список (afaik, scipy в python это умеет, R тоже умеет, так что можно и rpy2 задействовать, т.к. мне было желательно из python всё делать), но как понять, если распределение ненормальное, из-за какого значения проблема?
Может есть какой-то более-менее простой универсальный (если бы аномалия и список были одни, я бы писать не стал, у меня же их сотни и случаи отличаются) способ в Python или в R получить список анормальных значений для списка значений?
Надеюсь более-менее понятно объяснил задачу.
Сильно не пинайте, если совсем глупость спросил :)