Dữ liệu

train <- read.csv("train.csv", stringsAsFactors=FALSE)
rows <- nrow(train)
bound <- floor(rows/4*3)
test <- train[(bound + 1):rows,]
train <- train[1:bound,]

str(train)
## 'data.frame':    668 obs. of  12 variables:
##  $ PassengerId: int  1 2 3 4 5 6 7 8 9 10 ...
##  $ Survived   : int  0 1 1 1 0 0 0 0 1 1 ...
##  $ Pclass     : int  3 1 3 1 3 3 1 3 3 2 ...
##  $ Name       : chr  "Braund, Mr. Owen Harris" "Cumings, Mrs. John Bradley (Florence Briggs Thayer)" "Heikkinen, Miss. Laina" "Futrelle, Mrs. Jacques Heath (Lily May Peel)" ...
##  $ Sex        : chr  "male" "female" "female" "female" ...
##  $ Age        : num  22 38 26 35 35 NA 54 2 27 14 ...
##  $ SibSp      : int  1 1 0 1 0 0 0 3 0 1 ...
##  $ Parch      : int  0 0 0 0 0 0 0 1 2 0 ...
##  $ Ticket     : chr  "A/5 21171" "PC 17599" "STON/O2. 3101282" "113803" ...
##  $ Fare       : num  7.25 71.28 7.92 53.1 8.05 ...
##  $ Cabin      : chr  "" "C85" "" "C123" ...
##  $ Embarked   : chr  "S" "C" "S" "S" ...

Gia đình

Ta kiểm tra khả năng sống sót của một người nếu họ độc thân hay có mang nhiều người thân theo hay không. Ta tính số người thân đi cùng và tính tỷ lệ sống sót:

train <- train %>% 
  mutate(FamilySize = SibSp + Parch)

Tỷ lệ sống sót theo số người thân đi cùng

train %>% 
  group_by(FamilySize) %>% 
  summarise(Survivability = sum(Survived) / n()) %>% 
  ggplot(aes(x = factor(FamilySize), y = Survivability)) +
  geom_bar(stat = "identity")

So sánh số lượng sống sót và không sống sót theo số người thân đi cùng

train %>% 
  ggplot(aes(x = FamilySize, fill = factor(Survived))) +
  geom_bar(stat='count', position='dodge')

Những gia đình có từ 1 đến 3 người có cơ hội sống sót cao hơn. Những người độc thân và những gia đình đông người có tỷ lệ tử vong cao.

Giới tính và độ tuổi

train %>% 
  ggplot(aes(Age, fill = factor(Survived))) + 
  geom_histogram() + 
  facet_grid(.~Sex)
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## Warning: Removed 140 rows containing non-finite values (stat_bin).

Nam giới có tỷ lệ tử vong cao hơn nhiều so với phụ nữ, đặc biệt là ở lứa tuổi trưởng thành. Điều này có vẻ phù hợp với nội dung bộ phim Titanic vì những người đó hi sinh quyền lợi của mình để phụ nữ và trẻ em lên xuồng cứu hộ trước.