Основи перетворення часових рядів

Аналіз часових рядів у 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
  • Це кількість секунд, що минули з Epoch time (January 1st, 1970, о 00:00:00 UTC)
  • Зазвичай застосовується в комп'ютерних системах
  • Представляє мітку часу (дату й час)

Приклади дат і часу

January 1st, 2022 06:00:00 UTC

1641016800

January 1st, 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...