Etc/Deep Learning
3장(2) 실습 - 결정트리(타이타닉 승객 생존 여부 예측) | 대괄호 인덱싱 | map() | dropna(), drop() | DecisionTreeClassifier() | Confusion Matrix
z.zzz
2021. 7. 20. 16:17
1. 대괄호 인덱싱
대괄호 안에 필요한 컬럼명을 나열해 해당 열의 데이터만 추출
df = df[['Pclass', 'Sex', 'Age', 'SibSp', 'Parch', 'Fare', 'Survived']]
2. map() 메서드
pd.DataFrame['요소'].map({'기존값': 새로운 값})
df['Sex'] = df['Sex'].map({'male':0, 'female':1}) #sex를 0 또는 1의 정수값으로 변환
3. dropna()와 drop() 메서드
dropna() : 결측치(NaN)가 존재하는 행을 제거(디폴트)
- axis 옵션
- axis = 0(또는 row) : 행 기준 삭제 (default)
- axis = 1(또는 column) : 열 기준 삭제
drop() : 선택한 값이 삭제된 새로운 객체를 리턴(기존 객체는 변화 X)
- axis 옵션 적용됨
df = df.dropna()
X = df.drop('Survived', axis=1) //Survived 열이 삭제된 객체 리턴
4. DecisionTreeClassifier() ; 결정 트리 분류기
파라미터 참고 자료 : https://inuplace.tistory.com/548
from sklearn import tree
model = tree.DecisionTreeClassifier()
5. confusion matrix; 혼동행렬(분류 모델 성능 평가 지표)
pd.DataFrame() : 데이터를 테이블 형식으로 만듦
- DataFrame() 파라미터
- index : 행에 해당하는 인수 전달
- columns : 열에 해당하는 인수 전달
from sklearn.metrics import confusion_matrix
pd.DataFrame(
confusion_matrix(y_test, y_predict),
columns=['Predicted Not Survival', 'Predicted Survival'],
index=['True Not Survival', 'True Sruvival']
)
output