스터디📖/ML, DL

머신러닝 처음 시작하기(인프런) - 17강 최종실습 - 타이타닉2

호프 2021. 8. 18. 18:06

https://www.inflearn.com/course/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D-%EC%B2%98%EC%9D%8C-%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0/dashboard

 

머신러닝 처음 시작하기 (기초 원리 + 초급 실습) - 인프런 | 강의

머신러닝을 처음 접하는 사람들을 대상으로 기초적인 머신러닝 이론을 간략하게 다룬 머신러닝 기초 강의입니다., 그것이 알고 싶다!요새 핫한 머신러닝 🤖 [사진] 🗒 강의소개 (이 강의는 강

www.inflearn.com

17강 최종실습 - 타이타닉2

지난번 코드에 이어서 실습한다고 생각

# 데이터 시각화
import matplotlib.pyplot as plt
import seaborn as sns
sns.set()

def pivot(feature):
    pclass_pivot = train.pivot_table(index=[feature], values="Survived")
    pclass_pivot.plot.bar()
    plt.show()
pivot('Sex') #feature에 따라 survived 한 사람을 그래프로 보여줌

train_test_data = [train, test] #test data와 train data 합치기
for dataset in train_test_data:
    dataset["Title"] = dataset['Name'].str.extract('[A-za-z]+)\. ', expand=False)
    #이름은 영향을 미치지 않을 것이므로, 이름에서 성별 확인 가능 단어 추출 Mrs, Mr...
test['Title'].value_counts #위의 결과 확인
train['Title'].value_counts

title_mapping = {"Mr": 0, "Miss": 1, "Mrs": 2, "Master": 3, "Dr": 3, "Rev": 3, "Col": 3, "Ms": 2, "Mile": 3, "Major": 3, "Lady": 3, "Capt": 3, "Sir": 3, "Don": 3, "Mme": 3, "Jonkheer": 3, "Countess": 3} 
for dataset in train_test_data:
    dataset["Title"] = dataset['Title'].map(title_mapping)
    #성별 요인들을 0~3로 매핑시키기
print(pd.isnull(train).sum()) #title의 결측치

print(pd.isnull(test).sum())
test["Title"].fillna(df["Title"].mean(), inplace=True) #결측치를 평균값으로 채우기
train["Title"].fillna(df["Title"].mean(), inplace=True)