Короткий ответ
Единственного правильного решения нет: можно пересчитать всю историю по новому определению, оставить два параллельных ряда (старое и новое определение) на переходный период, или ввести явную точку разрыва на графике с пояснением — выбор зависит от того, насколько сильно отличаются определения и насколько критична непрерывность временного ряда для бизнеса.
Как это работает подробнее
смена логики метрики (например, "активный" теперь определяется по действию X за 7 дней вместо 30) при применении только "с сегодняшнего дня" создаёт разрыв сопоставимости: более ранние периоды посчитаны по старой логике, более поздние — по новой, и визуально это может выглядеть как резкий скачок, не связанный с реальным поведением пользователей; пересчёт всей истории по новому определению обеспечивает сопоставимость, но требует доступа к историческим сырым данным в достаточной детализации и может быть ресурсоёмким.
Пример кода
import pandas as pd
history = pd.DataFrame({
'month': ['2024-01', '2024-02', '2024-03', '2024-04'],
'active_users_old_def': [1000, 1050, 1100, None],
'active_users_new_def': [None, None, 1300, 1400]
})
print(history)Что использовать на практике
- На практике. стоит заранее проверить, достаточно ли гранулярны и доступны исторические сырые данные для пересчёта по новому определению; если да — пересчитать всю историю и явно задокументировать дату и причину изменения методологии в самом отчёте; если нет — вести оба ряда параллельно на переходный период, чтобы стейкхолдеры могли видеть преемственность, прежде чем полностью перейти на новую метрику.
- Проверка. явное наличие двух параллельных столбцов с перекрытием на переходный месяц (здесь — 2024-03) позволяет стейкхолдерам увидеть масштаб разницы между определениями на одном и том же периоде, прежде чем полностью перейти на новую метрику в будущих отчётах.
Подводные камни
- Частые ошибки. меняют логику расчёта метрики "тихо", без коммуникации даты и причины изменения, из-за чего стейкхолдеры интерпретируют технический разрыв ряда как реальное бизнес-событие; пересчитывают только часть истории без явного указания точки, с которой метрика сопоставима, из-за чего разные люди в компании продолжают сравнивать несопоставимые периоды.