Подготовка данных

titanic %>% glimpse()
## Rows: 891
## Columns: 27
## $ PassengerId <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,…
## $ Survived    <fct> Погиб, Выжил, Выжил, Выжил, Погиб, Погиб, Погиб, Погиб, Вы…
## $ Pclass      <fct> 3-й класс, 1-й класс, 3-й класс, 1-й класс, 3-й класс, 3-й…
## $ Name        <chr> "Braund, Mr. Owen Harris", "Cumings, Mrs. John Bradley (Fl…
## $ Sex         <fct> мужчина, женщина, женщина, женщина, мужчина, мужчина, мужч…
## $ Age         <dbl> 22, 38, 26, 35, 35, NA, 54, 2, 27, 14, 4, 58, 20, 39, 14, …
## $ SibSp       <dbl> 1, 1, 0, 1, 0, 0, 0, 3, 0, 1, 1, 0, 0, 1, 0, 0, 4, 0, 1, 0…
## $ Parch       <dbl> 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 1, 0, 0, 5, 0, 0, 1, 0, 0, 0…
## $ Ticket      <chr> "A/5 21171", "PC 17599", "STON/O2. 3101282", "113803", "37…
## $ Fare        <dbl> 7.2500, 71.2833, 7.9250, 53.1000, 8.0500, 8.4583, 51.8625,…
## $ Cabin       <chr> NA, "C85", NA, "C123", NA, NA, "E46", NA, NA, NA, "G6", "C…
## $ Embarked    <fct> Саутгемптон, Шербур, Саутгемптон, Саутгемптон, Саутгемптон…
## $ ...13       <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
## $ ...14       <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
## $ ...15       <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
## $ ...16       <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
## $ ...17       <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
## $ ...18       <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
## $ ...19       <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
## $ ...20       <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
## $ ...21       <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
## $ ...22       <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
## $ ...23       <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
## $ ...24       <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
## $ ...25       <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
## $ ...26       <chr> NA, NA, NA, NA, "We", NA, NA, NA, NA, NA, NA, NA, NA, NA, …
## $ AgeGroup    <fct> Молодые взрослые (19–35), Средний возраст (36–60), Молодые…

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

titanic %>%
  count(Survived) %>%
  mutate(Процент = percent(n / sum(n), accuracy = 0.1))
## # A tibble: 2 × 3
##   Survived     n Процент
##   <fct>    <int> <chr>  
## 1 Погиб      549 61.6%  
## 2 Выжил      342 38.4%

Выжило только 38% пассажиров

Выживаемость по полу

titanic %>%
  count(Sex, Survived) %>%
  group_by(Sex) %>%
  mutate(Процент = n / sum(n)) %>%
  ggplot(aes(x = Sex, y = Процент, fill = Survived)) +
  geom_col(position = "dodge") +
  scale_y_continuous(labels = percent_format()) +
  labs(title = "Выживаемость сильно зависела от пола",
       subtitle = "«Женщины и дети первыми» — это не миф",
       x = "", y = "Доля пассажиров", fill = "Исход") +
  theme_minimal(base_size = 14)

Вывод: 74 % женщин выжили, только 19 % мужчин.

Выживаемость по классу

titanic %>%
  ggplot(aes(x = Pclass, fill = Survived)) +
  geom_bar(position = "fill") +
  scale_y_continuous(labels = percent_format()) +
  labs(title = "Чем выше класс — тем выше шанс выжить",
       x = "Класс обслуживания", y = "Доля выживших", fill = "Исход") +
  theme_minimal(base_size = 14)

1-й класс — 63 % выживших

2-й класс — 47 %

3-й класс — 24 %

Возраст + пол

titanic %>%
  filter(!is.na(AgeGroup)) %>%
  count(AgeGroup, Sex, Survived) %>%
  group_by(AgeGroup, Sex) %>%
  mutate(Процент = n / sum(n)) %>%
  ggplot(aes(x = AgeGroup, y = Процент, fill = Survived)) +
  geom_col(position = "fill") +
  facet_wrap(~Sex, ncol = 2) +
  scale_y_continuous(labels = percent_format()) +
  labs(title = "Выживаемость по возрасту и полу",
       x = "Возрастная группа", y = "Доля выживших") +
  theme_minimal(base_size = 13) +
  theme(axis.text.x = element_text(angle = 30, hjust = 1))

1.Все девочки до 12 лет выжили почти на 100 %.

2.Мальчики до 12 лет тоже имели высокий шанс.

3.Мужчины старше 18 лет — шансы минимальны во всех возрастах.