**Контекст:** Игровая студия хочет предсказать отток игроков (не заходили > 14 дней) для таргетированных акций.
**Данные:** DataFrame `player_stats` — колонки: `player_id`, `days_since_last_login`, `total_sessions`, `avg_session_min`, `total_purchases`, `total_spent`, `level`, `friends_count`, `days_since_install`, `platform` (ios/android).
**Задание:**
1. Создайте целевую переменную: churned = 1 если `days_since_last_login > 14`
2. Проведите feature engineering: добавьте spend_per_session, sessions_per_day, has_purchases
3. Обучите логистическую регрессию, оцените accuracy, precision, recall, F1
4. Определите топ-5 важнейших фичей (коэффициенты)
Структура для ориентира — реальные значения из эталонного решения.
player_stats = pd.DataFrame({
'player_id': range(n),
'days_since_last_login': np.concatenate([
np.random.exponential(5, 3000), # активные
np.random.exponential(25, 2000), # отток
]).clip(0, 90).astype(int),
'total_sessions': np.random.poisson(50, n).clip(1),
'avg_session_min': np.random.lognormal(2.5, 0.8, n).round(1),
'total_purchases': np.random.poisson(3, n),
'total_spent': np.random.exponential(500, n).round(2),
'level': np.random.randint(1, 100, n),
'friends_count': np.random.poisson(5, n),
'days_since_install': np.random.randint(1, 365, n),
'platform': np.random.choice(['ios', 'android'], n),
})
pandas sklearn LogisticRegression feature engineering churn classification
Это задание для уровня Middle. Для middle-аналитиков с опытом 1-3 года, требует уверенного владения темой и понимания edge cases.
Подобные задания в категории «Python» регулярно дают на собеседованиях аналитика данных в Яндекс, Сбер, Ozon, Авито, Тинькофф, Wildberries, T-Bank, X5, ВТБ и других крупных IT-компаниях. Тематика: pandas, sklearn, LogisticRegression, feature engineering, churn.
На реальном собеседовании на подобную задачу отводится 15-30 минут — оцениваются подход, корректность, обработка edge cases. Для тренировки рекомендуем сначала решить самостоятельно, потом сверить с эталонным решением и подсказками.
На zasqlpython.ru есть 482 Python задачи с проверкой через Pyodide, конспекты Python и pandas, AI мок-собеседование с разбором ваших ответов.
← Все задания