팩터 데이터 타입의 차트에는 모자이크 플롯을 사용할 수 있다. pclass, sex에 따라 생존 여부가 어떻게 달라지는지 살펴보자.
> mosaicplot(survived ~ pclass + sex, data=data, color=TRUE, + main="pclass and sex")
그림 11-3에 실행 결과를 보였다. pclass가 3, 성별이 male인 경우(즉, 3등석 남성) 사망자가 가장 많고 pclass가 1, 성별은 female(1등석 여성)인 경우 사망자가 가장 적은 것을 볼 수 있다. 그러나 이 값은 탑승자 대비 사망률이 아니라 단순한 사망 또는 생존자 수임에 유의하기 바란다.
만약 pclass, sex별 생존율과 사망률을 보고 싶다면 분할표를 사용할 수 있다. 탑승자 수는 다음과 같이 구한다.
> xtabs(~ sex + pclass, data=data)
pclass
sex 1 2 3
female 118 83 174
male 140 143 403
생존자 수는 survived 컬럼의 값이 “survived”인 행의 수다.
> xtabs(survived == "survived" ~ sex + pclass, data=data)
pclass
sex 1 2 3
female 115 75 84
male 44 21 66
편리하게도 xtabs( )은 연산자를 지원한다. 따라서 두 결과를 조합해 생존율을 구할 수 있다.
> xtabs(survived == "survived" ~ sex + pclass, data=data) / xtabs( ~ sex + pclass, data=data)
pclass
sex 1 2 3
female 0.975 0.904 0.483
male 0.314 0.147 0.164
지금까지 살펴본 다양한 방법을 활용해 데이터가 어떤 모습을 보이고 있는지, 주어진 데이터로부터 어떻게 하면 탑승객의 생존 여부를 잘 추정할 수 있을지 살펴보기 바란다.