-
Scikit-learn의 train_test_split() 사용법AI 2019. 8. 21. 14:47
train_test_split()
다양한 기계학습과 데이터 분석 툴을 제공하는 scikit-learn 패키지 중 model_selection에는 데이터 분할을 위한 train_test_split 함수가 있다.
train_test_split 함수는 전체 데이터셋 배열을 받아서 랜덤하게 test/train 데이터 셋으로 분리해주는 함수이다.
- 클래스 값을 포함하여 하나의 데이터로 받는 경우
df_train, df_test = train_test_split(df, test_size=0.4, random_state=0)
- 클래스를 개별의 배열로 받는 경우
train_x, test_x, train_y, test_y = train_test_split(X, Y, test_size = 0.5)
from sklearn.model_selection import train_test_split X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.33, random_state=321)
Parameter
arrays: 분할시킬 데이터를 입력 (Python list, Numpy array, Pandas dataframe 등..)
test_size: 테스트 데이터셋의 비율(float)이나 갯수(int) (default = 0.25)
train_size: 학습 데이터셋의 비율(float)이나 갯수(int) (default = None), None을 입력하고 test_size를 지정할 경우 테스트 데이터셋을 뺀 나머지를 훈련 데이터로 사용한다.
random_state: 데이터 분할시 셔플이 이루어지는데 이를 위한 시드값 (int나 RandomState로 입력)
shuffle: 셔플여부설정 (default = True)
참고
'AI' 카테고리의 다른 글
파이썬으로 xlsx 파일과 csv 파일 다루기 (0) 2019.09.18 pickle 모듈 (0) 2019.08.21 Mean squared error (0) 2019.08.21 Scikit-learn의 LinearRegression() 함수 (0) 2019.08.21 CSV파일 읽기 (0) 2019.08.21