PassengerId, Survived, Pclass,
Name, Sex, Age, SibSp,
Parch, Ticket, Fare, Cabin, Embarked
Survived, Sex, and Embarked. Ordinal: Pclass.
Age, Fare. Discrete: SibSp, Parch.
Ticket - 숫자와 알파벳이 섞임, cabin - 숫자와 알파벳이 섞임
Name 점, 괄호 “” 같은 특수기호를 포함하고 있거나 너무 짧은 이름이 존재함
Cabin > Age > Embarked 순으로 널 밸류를 많이 포함하고 있음
7개의 int or float 데이터 5개의 문자열 데이터
for datasetin combine:
dataset['Title'] = dataset['Title'].replace(['Lady', 'Countess','Capt', 'Col',\
'Don', 'Dr', 'Major', 'Rev', 'Sir', 'Jonkheer', 'Dona'], 'Rare')
dataset['Title'] = dataset['Title'].replace('Mlle', 'Miss')
dataset['Title'] = dataset['Title'].replace('Ms', 'Miss')
dataset['Title'] = dataset['Title'].replace('Mme', 'Mrs')
train_df[['Title', 'Survived']].groupby(['Title'], as_index=False).mean()
title_mapping = {"Mr": 1, "Miss": 2, "Mrs": 3, "Master": 4, "Rare": 5}
for dataset in combine:
dataset['Title'] = dataset['Title'].map(title_mapping)
dataset['Title'] = dataset['Title'].fillna(0)
train_df.head()
위의 데이터 전처리과정이 흥미로워서 가져와봤는데 이름에 있는 작은 데이터들을 찾아내서 이를 통해 결혼한 남성, 여성인지 혹은 지위가 있었던 사람(귀족, 캡틴, 닥터)인지 알 수가 있었다. 이는 직접적이든 간접적이든 생존 결과에 영향을 미치는 것으로 보인다. 실제로 이 팀에서 공개한 correlation 값을 보면 title이 두번째로 높다.
출처: https://www.kaggle.com/code/startupsci/titanic-data-science-solutions