# ML_ASOIU

## Рубежный контроль №1 (весна 2025 года)

**Тема:** Методы обработки данных

---

## Информация о студенте

- **Студент:** Папин Алексей Владимирович
- **Группа:** ИУ5Ц-21М

---

## Вариант задания

| Номер варианта | Номер задачи №1 | Номер задачи №2 |
|:--------------:|:---------------:|:---------------:|
| 2              | 2               | 22              |

**Выполненные задачи:**
1. **Задача №2:** Для набора данных проведите кодирование одного (произвольного) категориального признака с использованием метода "target (mean) encoding".
2. **Задача №22:** Для набора данных проведите масштабирование данных для одного (произвольного) числового признака с использованием масштабирования по максимальному значению.


---

## Набор данных

**Global E-Commerce Sales Dataset (2021–2024)**

Синтетический датасет, имитирующий транзакции в сфере электронной коммерции.

- **Количество записей:** 10 000 (после удаления выбросов: 7 925)
- **Количество признаков:** 26

### Признаки:

**Идентификаторы:**
- `Order_ID` — идентификатор заказа
- `Customer_ID` — идентификатор клиента

**Временные признаки:**
- `Order_Date` — дата заказа
- `Year` — год
- `Month` — месяц
- `Quarter` — квартал
- `Season` — сезон

**Географические данные:**
- `Region` — регион
- `Country` — страна

**Категориальные данные:**
- `Customer_Gender` — пол клиента
- `Customer_Segment` — сегмент клиента
- `Category` — категория товара
- `Sub_Category` — подкатегория товара
- `Product_Name` — наименование товара
- `Shipping_Method` — метод доставки
- `Payment_Method` — способ оплаты
- `Order_Status` — статус заказа

**Количественные показатели:**
- `Unit_Price` — цена за единицу
- `Quantity` — количество
- `Discount` — скидка
- `Revenue` — выручка
- `Cost` — себестоимость
- `Profit` — прибыль
- `Profit_Margin_%` — маржинальность (%)
- `Shipping_Cost` — стоимость доставки
- `Shipping_Days` — количество дней доставки

---

## Выполненные этапы работы

1. **Загрузка и анализ данных**
   - Импорт библиотек (pandas, numpy, matplotlib, seaborn, sklearn)
   - Загрузка набора данных
   - Анализ описательной статистики

2. **Предобработка данных**
   - Удаление выбросов методом межквартильного размаха (IQR)
   - Удалено строк: 2 075

3. **Задача №2 — Target (Mean) Encoding**
   - Кодирование категориального признака с использованием среднего значения целевой переменной

4. **Задача №22 — MaxAbs Scaling**
   - Масштабирование числового признака по максимальному значению с использованием `MaxAbsScaler` из sklearn

---

## Структура проекта

```
ML_ASOIU/
├── README.md                       # Описание проекта
├── TASK.md                         # Условия задач рубежного контроля
├── rk1.ipynb                       # Jupyter Notebook с решением задач
├── plots/                          # Директория для сохранения графиков
└── ecommerce_sales_dataset.csv     # Набор данных
```