code-review-101-Farid
🔍 Задание 6: Exploratory Data Analysis — Датасет Titanic
Цель: Провести разведочный анализ данных (EDA) датасета пассажиров «Титаника» для понимания факторов, влияющих на выживаемость.
GitVerse профили Студент: Farid Репозиторий: /urfu_itis_limits/code-review-101-Farid
📁 Источник данных
Датасет загружен из Hugging Face Datasets Hub с помощью библиотеки :
Структура датасета:
- 891 запись (пассажиров)
- 12 признаков
| Признак | Тип | Описание |
|---|---|---|
| int | Уникальный ID |
| int | Целевая переменная: = погиб, = выжил |
| int | Класс билета (1 = высший, 2 = средний, 3 = низший) |
| str | Имя |
| str | Пол ( / ) |
| float | Возраст (с пропусками) |
| int | Количество братьев/сестёр или супругов на борту |
| int | Количество родителей/детей на борту |
| str | Номер билета |
| float | Стоимость билета |
| str | Номер каюты (много пропусков) |
| str | Порт посадки ( = Cherbourg, = Queenstown, = Southampton) |
🧹 Этап 1: Анализ пропущенных значений
| Признак | Пропущено | Процент |
|---|---|---|
| 177 | 19.87% |
| 687 | 77.10% |
| 2 | 0.22% |
💡 Вывод:
почти полностью отсутствует — его нецелесообразно использовать без импутации.Cabinимеет умеренное количество пропусков — возможна замена медианой.Age— всего 2 пропуска, можно удалить или заполнить модой (Embarked).'S'
🎯 Этап 2: Анализ целевой переменной (Survived)
| Статус | Количество | Процент |
|---|---|---|
| Умер | 549 | 61.62% |
| Выжил | 342 | 38.38% |
💡 Вывод:
Датасет слегка несбалансирован, но пригоден для анализа. Базовая точность (всегда предсказывать «погиб») — ~62%.
📊 Этап 3: Статистика числовых признаков
| Признак | Среднее | Медиана | Стд | Мин | Макс |
|---|---|---|---|---|---|
| 29.70 | 28.0 | 14.53 | 0.42 | 80.0 |
| 0.52 | 0.0 | 1.10 | 0 | 8 |
| 0.38 | 0.0 | 0.81 | 0 | 6 |
| 32.20 | 14.45 | 49.69 | 0.0 | 512.33 |
💡 Наблюдения:
- Возраст варьируется от младенца (0.42 года) до 80 лет.
- Высокий разброс по
— есть выбросы (очень дорогие билеты).Fare- Большинство пассажиров путешествовали без родственников (
).SibSp = Parch = 0
📈 Этап 4: Категориальные признаки
Пол (Sex)
- Мужчины: 577 (64.8%)
- Женщины: 314 (35.2%)
Класс билета (Pclass)
- 1-й класс: 216 (24.2%)
- 2-й класс: 184 (20.7%)
- 3-й класс: 491 (55.1%)
Порт посадки (Embarked)
- Southampton (
): 644 (72.3%)S - Cherbourg (
): 168 (18.9%)C - Queenstown (
): 77 (8.7%)Q
🔑 Ключевые зависимости выживаемости
Анализ через визуализации и агрегатные метрики показал:
| Фактор | Доля выживших |
|---|---|
| Пол | |
| Женщины | 74.2% |
| Мужчины | 18.9% |
| Класс | |
| 1-й класс | 62.9% |
| 2-й класс | 47.3% |
| 3-й класс | 24.2% |
💡 Вывод:
- Пол и класс билета — сильнейшие предикторы выживаемости.
- Женщины и пассажиры 1-го класса имели существенно выше шансы на спасение.
- Это согласуется с историческим принципом «спасать женщин и детей первыми» и приоритетом для богатых пассажиров.
🖼️ Сгенерированные визуализации
В ходе выполнения задания автоматически созданы следующие изображения:
-
06_titanic_target_distribution.png
— Распределение выживших и погибших. -
06_titanic_numeric_distribution.png
— Гистограммы числовых признаков (,Age,Fare,SibSp).Parch -
06_titanic_categorical_distribution.png
— Распределение,Sex,Pclass.Embarked -
06_titanic_survival_by_features.png
— Доля выживших по полу и классу билета.
Все графики сохранены в корневой директории проекта с разрешением 300 DPI для чёткости.
🛠️ Как запустить анализ
-
Установите зависимости:
-
Запустите скрипт:
-
В папке появятся:
- Консольный отчёт с полной статистикой
- 4 PNG-файла с визуализациями
Удалённые файлы: CONTRIBUTING.md - удален FILE_UPDATE_REPORT.md - удален README.md - создан Figure_1.png - добавлен Figure_2.png - добавлен Figure_3.png - добавлен Figure_4.png - добавлен
✅ Вывод
Проведённый EDA подтвердил известные исторические закономерности:
женщины, дети и пассажиры высших классов имели значительно выше шансы выжить.
Датасет готов к дальнейшему использованию в задачах машинного обучения (например, классификации выживаемости). Рекомендуется:
- Заполнить пропуски в
медианой поAgeиPclassSex - Закодировать категориальные признаки (
,Sex)Embarked - Удалить или игнорировать
из-за большого числа пропусковCabin
📌 Farid: студент УрФУ
Группа: РИ-150942/3 Номер задания: 9 📅 Дата: 20 ноября 2025 г.