Lifetime = T - T0
# загружаем данные
data = pd.read_csv('flowers.csv')
# приводим столбцы к типу datetime (дата и время)
for c in ['install_dt', 'event_dt']:
data[c] = pd.to_datetime(data[c])
data['lifetime'] = data['event_dt'] - data['install_dt']
data['lifetime_sec'] = (data['event_dt'] - data['install_dt']).dt.total_seconds()
data['lifetime_days'] = (data['event_dt'] - data['install_dt']).dt.days
# недели
data['lifetime_weeks'] = (data['event_dt'] - data['install_dt']) / np.timedelta64(1, 'W')
# месяцы
data['lifetime_months'] = (data['event_dt'] - data['install_dt']) / np.timedelta64(1, 'M')
# года
data['lifetime_years'] = (data['event_dt'] - data['install_dt']) / np.timedelta64(1, 'Y')
Используется для:
- сегментации пользователей "по возрасту" (масштаб дни... месяцы...)
- first user experience (масштаб секунды... минуты...)
- когортный анализ (первые и повторные покупки)
выбор шкалы времени зависит от специфики продукта, например для интернет магазинов это м.б. месяцы; для онлайн образования масштаб шкалы примерно соответствует длине спринта, около 1-2 недель; для мобильных игр и приложений это могут быть дни и недели;
Классы задач (примеры):
- доля старых пользователей во всех пользователях (соотношение старый и новый, при этом старый/новый могут определяться по разному)
- различия в монетизации для старых/новых пользователей, например средний чек
- отвал пользователей в приложении или онлайн игре, можно локализовать время максимального оттока пользователей
- изучение пользователей возобновляющих подписку к каждом периоде с момента регистрации
Комментариев нет:
Отправить комментарий