Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Васильев Ю. - Python для data science (Библиотека программиста) - 2023.pdf
Скачиваний:
7
Добавлен:
07.04.2024
Размер:
7.21 Mб
Скачать

10

Анализ данных временных рядов

Данные временного ряда, или данные с метками време-

ни, — это набор точек, индексированных в хронологи-

ческом порядке. Классические примеры информации

такого типа — экономические индексы, данные о погоде

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

с помощью библиотеки pandas. Мы разберем их на примере анализа данных фондового рынка, но те же методы можно применять ко всем видам временных рядов.

Регулярные и нерегулярные временные ряды

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

Дата

Цена закрытия

-----------

-------------

16-FEB-2022

10.26

17-FEB-2022

10.34

18-FEB-2022

10.99

 

 

210      Глава 10. Анализ данных временных рядов

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

Еще один пример регулярных временных рядов — ежеминутно записываемые координаты широты и долготы местонахождения автомобиля:

Время

Координаты

-------

----------------

20:43:00

37.801618, -122.374308

20:44:00

37.796599, -122.379432

20:45:00

37.788443, -122.388526

 

 

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

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

Время

Событие

-------

----------------------

8:00

Регистрация участников

9:00

Утренние сессии

12:10

Обед

12:30

Дневные сессии

 

 

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

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