Этот проект представляет собой анализ и подготовку данных по клиентам банка для задачи классификации — откроет ли клиент депозит.
В проекте используется датасет bank_fin.csv, содержащий информацию о клиентах банка и результатах маркетинговой кампании.
Цель: предсказать, откроет ли клиент срочный депозит (deposit: yes/no).
Проект включает:
- Загрузку и предварительный анализ данных
- Обнаружение и удаление выбросов
- Кодирование категориальных переменных
- Создание dummy-переменных
- Отбор признаков (с помощью
SelectKBest) - Подготовку данных для обучения моделей машинного обучения
Файл bank_fin.csv содержит следующие столбцы:
age— возрастjob,marital,education— категориальные признакиdefault,housing,loan— наличие кредитаcontact,month,day— данные звонковduration,campaign,pdays,previous— характеристики кампанииpoutcome— результат предыдущей кампанииdeposit— целевая переменная (открыл ли клиент депозит)
- pandas
- numpy
- matplotlib / seaborn
- scikit-learn
-
📥 Загрузка данных:
df = pd.read_csv("bank_fin.csv", sep=";")
-
🧹 Очистка и обработка:
- Удаление выбросов по признаку
balance - Перевод
depositв числовой формат
- Удаление выбросов по признаку
-
🧠 Кодирование:
- Label Encoding для
educationиage_group - One-hot Encoding (
pd.get_dummies) для:jobmaritalcontactmonthpoutcome
- Label Encoding для
-
✅ Отбор признаков:
- С помощью
SelectKBest(score_func=f_classif, k=15) - Только на числовых признаках
- С помощью
- После создания dummy-признаков и добавления закодированных переменных общее количество признаков: 52
- Наилучшие 15 признаков отобраны с помощью
SelectKBest
-
Установите зависимости:
pip install -r requirements.txt
-
Запустите ноутбук:
jupyter notebook Project_4_ML.ipynb
Project_4_ML.ipynb— основной ноутбук с анализомbank_fin.csv— датасетREADME.md— описание проекта
Учебный проект по машинному обучению.
DS/ML Track · SkillFactory · 2025