Темп роста

Анализ бизнес-данных с помощью SQL

Michel Semaan

Data Scientist

Дельты — запрос

WITH maus AS (
  SELECT
    DATE_TRUNC('month', order_date) :: DATE AS delivr_month,
    COUNT(DISTINCT user_id) AS mau
  FROM orders
  GROUP BY delivr_month),

maus_lag AS ( SELECT delivr_month, mau, COALESCE( LAG(mau) OVER (ORDER BY delivr_month ASC), 1) AS last_mau FROM maus)
Анализ бизнес-данных с помощью SQL

Дельты — результат

Запрос

WITH maus AS (...),
  maus_lag AS (...)

SELECT
  delivr_month,
  mau,
  mau - last_mau AS mau_delta
FROM maus_lag
ORDER BY delivr_month
LIMIT 3;

Результат

delivr_month  mau  mau_delta
------------  ---  ---------
2018-06-01    123  1
2018-07-01    226  103
2018-08-01    337  111
Анализ бизнес-данных с помощью SQL

Дельты — недостатки

  • Абсолютное числовое значение
  • Показывает лишь одно из трёх состояний переменной
    • Убывание: $\delta \lt 0$
    • Стабильность: $\delta = 0$
    • Возрастание: $\delta \gt 0$
Анализ бизнес-данных с помощью SQL

Темп роста — обзор

  • Темп роста: процентное изменение переменной со временем относительно её начального значения
  • Формула: $\frac{Current\:value\:-\:Previous\:value}{Previous\:value}$
  • Пример: $\frac{67 - 50}{50} = 0.34 = 34\% $
Анализ бизнес-данных с помощью SQL

Темп роста — запрос

Запрос

WITH maus AS (...),
  maus_lag AS (...)

SELECT
  delivr_month,
  mau,
  ROUND(
    (mau - last_mau) :: NUMERIC / last_mau,
  2) AS growth
FROM maus_lag
ORDER BY delivr_month
LIMIT 3;

Результат

delivr_month  mau  growth
------------  ---  ------
2018-06-01    123  122.00
2018-07-01    226  0.84
2018-08-01    337  0.49
Анализ бизнес-данных с помощью SQL

Рост

Анализ бизнес-данных с помощью SQL

Preparing Video For Download...