Snoopy [ML] 7. train/test 데이터 나누기, train_test_split
머신러닝과 딥러닝/ML 개념정리

[ML] 7. train/test 데이터 나누기, train_test_split

Sooyoon Jeong 2022. 10. 31.

멋쟁이 사자처럼 AI 스쿨 7기 오늘코드 박조은 강사님의 수업자료 및 수업내용을 바탕으로 포스팅하였습니다.


1. 인덱스로 직접 나누기

1) 비율로 데이터 나누기

int(df.shpae[0] * 비율)

 

2) train, test 쪼개기

train = 데이터프레임[:int(df.shpae[0] * 비율)]
test = 데이터프레임[int(df.shpae[0] * 비율):]

 

3) feature_names와 label_name 생성

feature_names: 학습과 예측에 사용할 컬럼 지정

label_name: 정답이자 예측해야 할 컬럼 지정

 

4) 학습, 예측 데이터 셋 생성

X_train: 기출문제

y_train: 기출문제 정답

X_test: 실전문제

y_test: 실전문제 정답

 

2. train_test_split 을 활용하여 나누기

train_test_split을 사용하면 위 과정을 보다 간단하게 진행할 수 있다.

from sklearn.model_selection import train_test_split

X_train, X_test, y_train, y_test = train_test_split(
    X, y, test_size=0.2, stratify = y,random_state=42)

 stratify: label의 분포를 균등하게 배분


🔗 참고자료

오늘코드 박조은 강사님 강의자료

댓글