Основы преобразования данных временных рядов

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

Kevin Barlow

Data Analytics Professional

Контекст и значимость

  • Данные временных рядов становятся всё более распространёнными в каждой отрасли.
  • Разные системы имеют разные требования и форматы.

 

Макет архитектуры данных

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

ISO как международный стандарт

ISO 8601

  • Международный стандарт для работы с данными о дате и времени
  • Позволяет преобразовывать даты и время в различные форматы
  • Обеспечивает локализацию и персонализацию под индивидуальные нужды
  • Управляйте полем даты с помощью FORMAT()

Пример даты:

var date = January 1st 2022 
# US Standard (MM DD YYYY)

var date2 = FORMAT(date, "DD MM YYYY")
# UK Standard
# 1 January 2022

var date3 = FORMAT(date, "YYYY MM DD")
# ISO Standard
# 2022 January 01
1 https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations
Анализ временных рядов в Power BI

UNIX для высокоточных меток времени

UNIX Time

  • Также известно как время эпохи (Epoch time)
  • Обозначает количество секунд, прошедших с момента начала эпохи (1 января 1970 г., 00:00:00 UTC)
  • UNIX-время, как правило, применяется в компьютерных системах
  • Представляет метку времени (дату и время)

Примеры дат и времени

1 января 2022 г., 06:00:00 UTC

1641016800

1 января 2022 г., 18:00:00 UTC

1641060000

1 https://en.wikipedia.org/wiki/Unix_time
Анализ временных рядов в Power BI

Работа с датами в Power BI

DATEADD()

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

DATEADD(<dates>,<number_of_intervals>,<interval>)

Примеры:

DATEADD('date', 30, DAY)

var timestamp_PST = 
    DATEADD('timestamp_EST', -3, HOUR)

DATEDIFF()

Вычисляет количество временных интервалов между двумя объектами даты.

DATEDIFF(<Date1>, <Date2>, <Interval>)

Примеры:

DATEDIFF(DATE(2019,2,1),
        DATE(2020,4,30),
        MONTH)

Result: 14
Анализ временных рядов в Power BI

Агрегирование данных с помощью DAX

Данные временных рядов не всегда поступают через равные интервалы — это зависит от способа сбора. Такая нерегулярность может создавать проблемы:

  • Временны́е алгоритмы и формулы предполагают постоянный интервал
  • Между точками данных могут происходить значительные изменения

Примените SUMMARIZE() к таблице, чтобы «сгладить» набор данных. Агрегирование позволяет выявлять тенденции, даже если данные отсутствуют или нерегулярны.

Пример:

SUMMARIZE('<table>', 
    [group_column(s)], 
    [new aggregated column(s)])

SUMMARIZE('sales', 
    sales[Quarter], 
    sales[Region], 
    "Total Sales", SUM(sales[revenue]))
Анализ временных рядов в Power BI

Обработка пропущенных данных

Импутация — полезная стратегия, когда у нас достаточно контекста для восстановления пропущенных значений; как правило, выполняется в Power Query.

Пример импутации данных

Удаление данных — применяется, когда в строке или столбце отсутствует значительная часть данных; следует избегать, если это явно не улучшает анализ

Пример удаления данных

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

Набор данных Superstore

В следующих упражнениях вы будете работать с набором данных Superstore. Он представляет данные о точках продаж (PoS) магазинов Superstore по всей территории США. Ваша задача — привести даты к корректному формату для дальнейшего анализа.

Данные Superstore

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

Давайте потренируемся!

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

Preparing Video For Download...