Дано: DataFrame `clients` с колонками age, income (тыс. руб.), credit_score, approved (0/1 -- одобрен ли кредит). Реализуйте логистическую регрессию вручную через численную минимизацию функции потерь. Получите: 1. Коэффициенты модели (по стандартизованным признакам) 2. Accuracy на обучающих данных 3. Marginal effects (dP/dx = beta × p × (1-p) при средних значениях) Loss = -mean(y × log(sigmoid(Xb)) + (1-y) × log(1-sigmoid(Xb))). Сохраните dict {"coefficients": {...}, "accuracy":..., "marginal_effects": {...}} (округлённые до 4 знаков) в `result`.
logistic_regression marginal_effects classification statistics
Задача «Логистическая регрессия + marginal effects» учит применять статистику и научные методы через scipy. Такие задачи дают на собеседованиях в Тинькофф и других IT-компаниях. Уровень сложный — проверяет глубину и умение собрать решение из нескольких приёмов.
Сначала разбери условие и формат входа-выхода, прикинь крайние случаи (пустой ввод, дубли, NaN). Затем выбери структуру данных и собери решение по шагам — начни с простого рабочего варианта, потом оптимизируй сложность. Код пишешь и запускаешь прямо в браузере: Python-тренажёр исполняет его через Pyodide (pandas, numpy, scipy) и проверяет результат автоматически.
На собеседовании по Python для аналитика ценят чистый читаемый код, корректную обработку крайних случаев (пустой ввод, дубли, None) и умение вслух оценить сложность по времени и памяти. Часто просят не просто решить, а разобрать альтернативные подходы и показать, где наивное решение сломается на большом объёме данных.
Прокачать Python для аналитики — бесплатный курс «Pandas с нуля» и Python-тренажёр.
Открыть задачу в тренажёре → ← Все Python-задачи