Выбор ответа Middle Даты и время спрашивают часто обновлено
DAU в UTC и по Москве
Вопрос
События хранятся в UTC. Аналитик считает DAU как df.groupby(df["ts"].dt.date)["user"].nunique(). Продукт работает в Москве. Что не так?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: События с 00:00 до 03:00 по Москве уйдут в прошлые сутки UTC. Московское время на 3 часа впереди UTC.
Варианты ответа
- Ничего: дата события не зависит от часового пояса хранения
- События с 00:00 до 03:00 по Москве уйдут в прошлые сутки UTCправильный ответ
nuniqueне работает с группировкой по датам и вернёт ошибку- Для DAU нужно было
count, а неnuniqueпо пользователям
Разбор
Московское время на 3 часа впереди UTC. Событие в 01:00 по Москве в UTC это 22:00 предыдущего дня, и оно попадёт не в те сутки. Нужно ts.dt.tz_localize("UTC").dt.tz_convert("Europe/Moscow") (или to_datetime(..., utc=True)) и только потом брать дату. nunique как раз правильный выбор: DAU это уникальные пользователи.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.