Обзор пакета для анализа временных рядов forecast на языке программирования R | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 18 мая, печатный экземпляр отправим 22 мая.

Опубликовать статью в журнале

Автор:

Научный руководитель:

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №5 (504) февраль 2024 г.

Дата публикации: 01.02.2024

Статья просмотрена: 28 раз

Библиографическое описание:

Яблокова, Е. Э. Обзор пакета для анализа временных рядов forecast на языке программирования R / Е. Э. Яблокова. — Текст : непосредственный // Молодой ученый. — 2024. — № 5 (504). — С. 25-27. — URL: https://moluch.ru/archive/504/110933/ (дата обращения: 08.05.2024).



Данная статья рассматривает основные аспекты пакета «forecast», обращая внимание на его ключевые возможности и применение.

Ключевые слова: R, временные ряды, ARIMA

Прогнозирование — ключевой элемент в анализе временных рядов, и в R одним из мощных инструментов в этой области является пакет «forecast».

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

Компоненты временного ряда:

— Тренд: долгосрочное движение или направление данных. Тенденции могут быть восходящими (увеличивающимися), нисходящими (убывающими) или плоскими (постоянными);

— Сезонность: повторяющиеся закономерности или колебания, происходящие через определенные промежутки времени. Например, продажи зимней одежды могут иметь годовую сезонность;

— Циклические модели: долгосрочные, несезонные модели, которые могут не иметь фиксированных интервалов. Циклические закономерности представляют собой колебания данных, не привязанные к конкретному сезону;

— Нерегулярность (шум): случайные, непредсказуемые колебания данных.

Методы прогнозирования временных рядов — это методы, используемые для прогнозирования будущих значений временных рядов на основе исторических и текущих данных. Существует несколько хорошо зарекомендовавших себя методов прогнозирования временных рядов, каждый из которых имеет свои сильные и слабые стороны. Вот некоторые из наиболее часто используемых методов прогнозирования временных рядов:

  1. AutoRegressive Integrated Moving Average (ARIMA);
  2. Сезонное разложение временных рядов (STL);
  3. Сезонный ARIMA (SARIMA) [1].

Пакет «forecast» предоставляет набор инструментов для прогнозирования временных рядов, облегчая анализ и предсказание будущих значений. Созданный профессором Робом Дж. Хайджером, этот пакет стал неотъемлемой частью арсенала аналитиков данных и статистиков [2].

Одной из ключевых функций является auto.arima(), которая автоматически определяет параметры модели ARIMA для временного ряда. Это упрощает процесс выбора подходящей модели и повышает точность прогнозов.

Функция forecast() используется для создания прогнозов на основе построенных моделей. Она предоставляет простой способ получения будущих значений временного ряда.

Возьмем данные «Bakery Sales» с сайта Kaggle о ежедневных продажах выпечки [3]. Можно использовать пакет «forecast» для построения прогноза продаж на следующие месяцы. Пример кода представлен на рисунке 1.

Код построения прогноза продаж на 6 месяцев вперед

Рис. 1. Код построения прогноза продаж на 6 месяцев вперед

Здесь были произведены небольшие преобразования данных. Из данных извлечены только те колонки, которые содержат дату и продажи, а также сами данные преобразованы в одномерный временной ряд с помощью функции ts().

Модель ARIMA используется для описания и прогнозирования временных рядов, таких как ежедневные продажи, температура и другие явления, меняющиеся во времени. Функция auto.arima(), принимает только одномерные временные ряды в R и делает процесс моделирования более удобным.

На рисунке 2 представлены результаты визуализации прогноза. На оси X отображаются временные метки для прогнозируемых периодов. На оси Y отображаются значения временного ряда или прогнозные значения. Доверительные интервалы могут быть представлены как дополнительные области или линии вокруг прогнозных значений.

Результаты, выведенные с помощью print(forecast_result), обычно содержат более подробную информацию, включая статистические метрики и дополнительные параметры модели. Каждая строка представляет прогнозные значения и соответствующие доверительные интервалы для конкретных периодов временного ряда. Например, для периода 250, прогнозное среднее составляет 195491.4, а 80 % доверительный интервал находится между 38809.51 и 352173.3. Аналогичные значения предоставляются для других уровней доверия (95 %).

Визуализация прогноза ежемесячных продаж

Рис. 2. Визуализация прогноза ежемесячных продаж

Пакет «forecast» в R предоставляет мощные инструменты для анализа временных рядов и прогнозирования будущих значений. С его помощью можно легко и эффективно строить модели и делать точные прогнозы, что делает его неотъемлемым инструментом для специалистов в области анализа данных.

Литература:

1. Time Series and Forecasting Using R [Электронный ресурс] URL: https://www.geeksforgeeks.org/time-series-and-forecasting-using-r/ (дата обращения 20.01.2024);

2. forecast: Forecasting Functions for Time Series and Linear Models [Электронный ресурс] URL: https://cran.r-project.org/package=forecast (дата обращения 20.01.2024);

3. HOSUB JEONG, Bakery Sales [Электронный ресурс] URL: https://www.kaggle.com/datasets/hosubjeong/bakery-sales?select=Bakery+Sales.csv (дата обращения 20.01.2024).

Основные термины (генерируются автоматически): ARIMA, временный ряд, ряд, SARIMA, STL, данные, метод прогнозирования, модель, пакет, прогнозирование будущих значений.


Ключевые слова

временные ряды, R, ARIMA

Похожие статьи

Задать вопрос