Русский
Русский
English
Статистика
Реклама

Использование статистических методов для анализа временных рядов

Очень часто в нашей работе встречается такое понятие как временной ряд. Это определение было придумано очень давно. Тогда, когда люди только стали записывать данные о чем-то двумя значениями: явлением и временем. Наиболее классическим описанием временного ряда является запись температуры на протяжении года или нескольких лет.

Но сам ряд это лишь набор информации, который не несет ничего нужного. При этом, если построить график этого ряда, используя, к примеру, для оси Y значения времени, а для оси X показания, которые были нами изначально записаны или форматизированы в цифровом виде, то мы сможем найти некоторые последовательности.

В случае графика температур день теплее, чем ночь, а зима холоднее лета. И чем больше данных мы сможем проанализировать подобным образом, выделяя какие-то закономерности, тем с большей точностью мы сможем предугадать что нас ждет в будущем.

Таким же образом думали люди в прошлом, разделяя процесс работы с временными графиками на три этапа: сбор данных, анализ временного ряда, предсказание следующих значений.

Но для чего может использоваться временной ряд в аудите? Для всего!

Операции клиента на протяжении квартала временной ряд. Расход топлива служебного автомобиля временной ряд. Даже чтение этой статьи тоже временной ряд! (мы можем записать сколько слов в минуту вы читаете, с указанием порядкового времени минуты)

Поэтому, анализ временных рядов мы с вами проводим достаточно часто. И, к сожалению, очень часто можем ошибаться.

Основным методом работы с любым простым временным рядом это построение графика и его визуальная оценка.

Возьмем простой пример: рассмотрим покупки подарков к праздничному мероприятию для десяти коллег.

Здесь все более-менее понятно:

в начале декабря было осуществлено всего несколько покупок для некоторых коллег. Ближе к празднику остальным.

А если коллег и знакомых не десять, а 200? И закупаться нужно не за 10 дней, а в течение целого месяца?

К сожалению, быстро оценить по какой схеме покупаются подарки не получится. Но давайте проанализируем несколько фактов:

  1. Самым близким коллегам и знакомым мы готовим дорогие подарки;

  2. Сразу найти нужный подарок не всегда удается и процесс покупки подарков растягивается на месяц.

Получается, что есть какая-то последовательность, например период времени закупки подарков для определенных групп коллег.

Наличие таких одинаковых периодов говорит о том, что ряд стационарен. То есть существует какая-то часть, которая всегда повторяется. Но как понять, есть ли этот период?

Для этого используется целая группа тестов:

  1. Тест Дики Фуллера,

  2. Тест Филипса Перрона,

  3. Тест Лейбурна,

  4. Тест Шмидта Филлипса,

  5. Тест Квятковского Филлипса Шмидта Шина,

  6. Тест DF GLS,

  7. Тест Кохрейн.

В этом примере мы будем использовать тест Дики Фуллера, который реализован в модуле statsmodels на языке python. Для этого нам надо будет всего лишь выбрать нужные модули (statsmodels и pandas), загрузить данные, и вывести результат. Ниже представлен пример скрипта:

При этом сами данные выглядят следующим образом:

Основная идея теста заключается в подтверждении или отклонении двух гипотез:

  • Нулевая гипотеза (H0): предполагает, что временной ряд имеет единичный корень, то есть он нестационарный (покупаем подарки в случайном порядке).

  • Альтернативная гипотеза (H1): предполагает, что временной ряд не имеет единичного корня, то есть он является стационарным. Если эта гипотеза верна, то у нас есть список покупок подарков на определенный временной период, в котором количество подарков для близких коллег и знакомых будет неизменно.

Для подтверждения или опровержения этих гипотез используются p -values значения.

p -values это наименьшее значение уровня значимости (то есть вероятности отказа от справедливой гипотезы).

В случае еслиp valuesбольше значения 5%, то мы отвергаем нулевую гипотезу, и, следовательно, ряд является стационарным, имеет определенную периодичность, которую возможно выявить.

Существуют различные реализации этого теста, однако, приведенная в данном примере является самой простой.

Исходя из того, что ряд является стационарным, мы можем сделать вывод, что покупку и близким коллегам и остальным знакомым мы начинаем одновременно и делаем это определенными заходами.

Используя такой простой пример, мы можем определить наличие закономерностей в работе проверяемых нами объектов.

Источник: habr.com
К списку статей
Опубликовано: 04.02.2021 14:12:29
0

Сейчас читают

Комментариев (0)
Имя
Электронная почта

Python

Программирование

Тест дики — фуллера

Statsmodels

Pandas

Анализ данных

Анализ данных python

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru