Decision Tree: важность признаков

Medium scikit-learn ML Самокат

Условие задачи

Дано: DataFrame `data` с колонками distance, items, time_of_day, is_weekend, delivery_time -- 100 строк. Обучите дерево решений (max_depth=4, random_state=42) для предсказания delivery_time и определите, какой признак вносит наибольший вклад. Сохраните dict {"importances": dict(feature: round(4)), "r2": round(4), "most_important": str} в `result` (importances отсортирован по убыванию).

Темы

decision_tree feature_importance regression

Подсказки

Что проверяет эта задача

Задача «Decision Tree: важность признаков» учит решать задачи на scikit-learn так, как это спрашивают на собеседовании аналитика данных. Такие задачи дают на собеседованиях в Самокат и других IT-компаниях. Уровень средний — типичная боевая задача на уверенный Python.

Как подступиться к решению

Сначала разбери условие и формат входа-выхода, прикинь крайние случаи (пустой ввод, дубли, NaN). Затем выбери структуру данных и собери решение по шагам — начни с простого рабочего варианта, потом оптимизируй сложность. Код пишешь и запускаешь прямо в браузере: Python-тренажёр исполняет его через Pyodide (pandas, numpy, scipy) и проверяет результат автоматически.

На собеседовании по Python для аналитика ценят чистый читаемый код, корректную обработку крайних случаев (пустой ввод, дубли, None) и умение вслух оценить сложность по времени и памяти. Часто просят не просто решить, а разобрать альтернативные подходы и показать, где наивное решение сломается на большом объёме данных.

Прокачать Python для аналитики — бесплатный курс «Pandas с нуля» и Python-тренажёр.

Открыть задачу в тренажёре → ← Все Python-задачи