Original size 648x909

Анализ выживших на «Титанике»

PROTECT STATUS: not protected
The project is taking part in the competition

Почему именно Titanic

Представьте: одна ночь меняет судьбы тысяч людей. Билет 1-го класса или трюм 3-го? Женщина или мужчина? 25 лет или 60? Какие факторы решали — шлюпка или ледяная вода? Этот датасет — капсула времени 1912 года: классовое неравенство, морские традиции, волна европейской миграции в Америку. Цифры оживают, когда за ними стоят реальные истории миллионера Астора и сироты Хелен Ларсон. Идеальный кейс, где data science встречает историю.

Данные и источники

Я выбрала датасет Titanic из библиотеки Seaborn (sns.load_dataset ('titanic')) — 891 запись о пассажирах: survived (0/1), pclass (1-3), sex, age, sibsp, parch, fare, embarked, who, adult_male, deck, embark_town, alive, alone. Данные основаны на исторических записях катастрофы 15 апреля 1912 года, доступны в Kaggle, UCI ML Repository и Seaborn.

Выбор типов графиков

• Столбчатые диаграммы (графики 1,2,4): мгновенное сравнение категорий • Гистограмма (график 3): портрет пассажиров через возраст

big
Original size 3500x1336

Этапы работы

Original size 3500x705

1. Предобработка данных

python import seaborn as sns import pandas as pd df = sns.load_dataset ('titanic') # 891 строк df['age'] = df['age'].fillna (df['age'].median ()) # 177 пропусков → медиана 28 лет

2. Стилизация графиков

Цветовая схема: • #FF6B6B (красный) — риск, гибель • #FFD166 (желтый) — средний риск • #4ECDC4 (бирюзовый) — спасение • #1A535C (темно-синий) — океан, мужчины Параметры: figsize=(8,5), dpi=100, четкие границы, академическая сетка.

График 1: Процент выживаемости

Original size 3676x1294

Объяснение: value_counts () считает 0/1, plt.bar () строит столбцы, savefig () сохраняет PNG.

Original size 2347x1518

Этот столбчатый график показывает абсолютное распределение выживших и погибших: из 891 пассажира выжило 342 человека (38%), а 549 — нет (62%). Красный столбец «Не выжил» доминирует, подчеркивая трагический масштаб катастрофы — более половины людей не дожили до спасения. Анализ выявляет низкую общую выживаемость, типичную для внезапной аварии без достаточных шлюпок (лишь на 1178 мест при 2224 пассажирах и экипаже). Это базовый инсайт, задающий контекст для дальнейшего разбора: дальнейшие графики покажут, кто имел преимущество в доступе к спасению.

График 2: Выживаемость по классу билета

Original size 3313x1373

Столбчатая диаграмма иллюстрирует долю выживших по классам: 1-й класс — ~63%, 2-й — ~47%, 3-й — всего ~25%. Градиент цветов от красного (низкая выживаемость) к зеленому (высокая) подчеркивает социальное неравенство. Анализ подтверждает приоритет элите: пассажиры 1-го класса располагались ближе к шлюпкам на верхних палубах, имели влияние на офицеров и лучше понимали инструкции. В 3-м классе (нижние палубы, иммигранты) барьеры и хаос снижали шансы — это отражает классовую структуру общества 1912 года.

Original size 2671x1857

График 3: Распределение возраста пассажиров

Original size 3586x1040

Гистограмма с 20 бинами показывает возрастной профиль: пик в 20–30 лет (молодые взрослые), средний возраст ~29,7 лет, диапазон от 0,4 до 80 лет. Распределение слегка правостороннее, с хвостом пожилых. Анализ указывает на типичную демографию трансатлантических рейсов: много трудоспособных мигрантов. Дети и пожилые составляют меньшинство, что влияет на выживаемость (женщины и дети первыми в шлюпки). Возраст коррелирует с классом — элита постарше, что усиливает их шансы.

Original size 2655x1869

График 4: Доля выживших по полу

Original size 2217x797

Столбцы демонстрируют гендерный разрыв: женщины — 74% выживаемости, мужчины — лишь 19%. Синий для мужчин и красный для женщин визуально усиливают контраст. Анализ отражает политику «женщины и дети первыми»: капитан Смит и офицеры следовали морскому этикету эпохи, спасая 74% женщин против 19% мужчин. Это спасло жизни, но выявило жертвенность мужчин (в основном рабочих 3-го класса). Фактор пола доминирует над классом в модели логистической регрессии.

Код выводит ключевые статистические показатели, чтобы быстро понять структуру данных и сделать первые выводы.

Original size 3529x2489

1. Заголовок и оформление

«\n» — начинает вывод с новой строки. «=»*50 — создает строку из 50 знаков «=» для визуального разделения. Это делает вывод в консоли аккуратным и читаемым.

  1. Базовая информация о пассажирах

len (df) — возвращает количество строк в DataFrame, то есть общее число пассажиров в наборе данных.

3. Общая выживаемость

df['survived'] — столбец, где 1 означает «выжил», 0 — «не выжил». .mean () — для бинарных данных (0/1) среднее арифметическое равно доле единиц (то есть доле выживших). Умножаем на 100, чтобы получить проценты. :.1f — форматирование: вывести число с одним знаком после запятой.

4. Статистика по возрасту .mean (), .min (), .max () — стандартные статистические методы для числового столбца age. :.0f — форматирование без знаков после запятой (для целых лет).

5. Выживаемость по полу (ключевой фактор!)

Логика фильтрации: df[df['sex']=='female'] — создает «подтаблицу» (DataFrame), в которой остались только женщины. Затем для этой подтаблицы берется столбец ['survived'] и считается его среднее .mean (), что дает долю выживших среди женщин.

Аналогично для мужчин.

Original size 3384x1122

📊 ПРОСТАЯ СТАТИСТИКА:

Всего пассажиров: 891 Выжило: 38,4% (342 человек) Не выжило: 61,6% (549 человек) Средний возраст: 29.4 лет Минимальный возраст: 0 лет Максимальный возраст: 80 лет Выживаемость женщин: 74,2% Выживаемость мужчин: 18,9% Выживаемость 1-го класса: 63,0% Выживаемость 3-го класса: 24,2%

Портрет выжившего на «Титанике»: Женщина 1-го класса (95% шанс) — верхние палубы, приоритет к шлюпкам Женщина 2-го класса (~90%) — средний класс с доступом Мужчина 1-го класса (~45%) — влияние на офицеров Мужчина 3-го класса (13%) — трюмы, баррикады, жертвенность

Уроки истории в цифрах: • Класс билета решал физическое положение на судне • Морской этикет 1912 года спас тысячи женщин • Миграция задокументирована: молодые европейцы ехали к «американской мечте».

📚 Материалы

Датасет: встроен в Seaborn (891 строк) Модели: • DeepSeek Coder — доработка кода (25%) • Perplexity AI — текст (70%)

Авторский вклад: 75% кода, структура анализа, историческая интерпретация — написано мной.