В ежедневном графике событий один день трекинг был сломан: данных нет, но пользователи в этот день были. Как корректнее отобразить этот день?
Line chart — стандарт для визуализации временных рядов: DAU, revenue, конверсия по дням. На собеседовании спрашивают, как показать сезонность, тренд и аномалии на одном графике, нужна ли ось Y с нуля и как сравнить несколько метрик с разными масштабами. Временные ряды — самый частый тип визуализации в аналитике.
Всего в этом разделе 20 вопросов. Каждый — с правильным ответом и кратким разбором теории. Разбито на 4 части по 5 вопросов.
1Промо-акция шла только 2 дня (пт–сб). Хотите увидеть её эффект на заказах на временном графике. Какая детализация по времени наиболее уместна?
AАгрегировать заказы по дням и строить дневной временной ряд, чтобы увидеть всплеск именно в дни промо
BАгрегировать заказы по месяцам и сравнивать месячные суммы, чтобы оценить вклад промо в общий период
CАгрегировать заказы по кварталам и смотреть квартальную динамику, чтобы оценить вклад промо в общий период
DПоказать одно итоговое число заказов за период без временной оси, чтобы оценить общий результат промо
Ответ: Короткие изменения лучше смотреть на более мелкой детализации по времени.
Если агрегировать слишком крупно, эффект двух дней «растворится» в периоде. Дневная детализация покажет изменение именно там, где оно произошло. Месячная и квартальная агрегация скрывают всплеск, а одно число вообще не показывает динамику.
Недельные провалы часто связаны с разницей между буднями и выходными. Для оценки тренда без эффекта дней недели сравнивают одинаковые дни (неделя к неделе) и применяют скользящее среднее с окном 7 дней. Это позволяет отделить сезонную составляющую от настоящего изменения уровня.
3Команда хочет найти день, когда произошёл резкий сбой (падение конверсии на один день). Почему накопительный график может быть плохим выбором?
AНакопительный график сглаживает краткосрочные провалы: разовый сбой почти не виден, лучше смотреть дневной ряд
BНакопительный график подсвечивает аномалии лучше дневного ряда: любой однодневный провал на нём сразу заметен
CНакопительный график для временных рядов строить нельзя: он не покажет день с резким падением конверсии
DНакопительный график убирает сезонность и краткосрочные эффекты, поэтому удобен для поиска однодневных аномалий
Ответ: Накопительный график полезен для прогресса, но скрывает краткосрочные изменения.
Кумулятивная кривая растёт почти монотонно и «размазывает» локальные провалы. Для аномалий лучше дневной временной ряд, а скользящее среднее можно добавить как вспомогательное сглаживание.
4Вы строите график выручки магазина по дням как временной ряд. Какую агрегацию по дням выбрать для столбца с выручкой?
AСреднее значение чека за день: оно характеризует поведение покупателей и устойчивость их корзины во времени
BСумма выручки за день: она показывает заработанные деньги напрямую и складывается в годовой денежный итог
CМедиана выручки на одного пользователя по всем заказам этого дня: типичный клиент дневной выборки
DКоличество визитов в день: оно отражает дневной трафик и уровень посещаемости магазина пользователями
Ответ: Для дневной выручки во временном ряду берут сумму за период.
Если цель — сколько денег магазин получил за день, нужно брать сумму выручки за этот день. Средний чек отвечает на другой вопрос и может расти даже при падении числа заказов. Медиана выручки на пользователя описывает типичного клиента, но не общий заработок. Число визитов вообще не про деньги — это метрика трафика, а не дохода.
5Дневная метрика `DAU` (Daily Active Users) сильно шумит. Какой приём поможет показать тренд, не потеряв исходные значения?
AДобавить 7-дневное скользящее среднее поверх дневной линии, не убирая исходные значения с графика
BПерейти на годовую агрегацию данных и показывать только итоговые значения без дневной разбивки
CУбрать выходные дни из графика, чтобы спрятать всплески и сделать линию визуально более ровной
DСортировать точки по величине метрики, а не по дате, чтобы тренд выглядел более монотонным
Ответ: Скользящее среднее сглаживает шум, сохраняя смысл временного ряда и исходные значения.
Скользящее среднее уменьшает случайные колебания и помогает увидеть тренд. Полезно подписать окно сглаживания и не скрывать исходную линию полностью. Годовая агрегация теряет дневную динамику, удаление выходных искажает картину, а сортировка по величине ломает временную ось.