[python] 데이터 분할하기
Python으로 데이터를 다룰 때, 종종 데이터셋을 학습 데이터와 테스트 데이터로 분할해야 합니다. 이는 모델을 학습시키고 평가할 때 중요한 과정입니다.
이 블로그 포스트에서는 Python의 scikit-learn
라이브러리를 사용하여 데이터를 분할하는 방법을 알아보겠습니다.
scikit-learn
라이브러리 설치
scikit-learn
라이브러리가 설치되어 있지 않은 경우, 다음 명령어를 사용하여 설치할 수 있습니다.
pip install scikit-learn
데이터 분할하기
scikit-learn
라이브러리의 train_test_split
함수를 사용하여 데이터를 학습 데이터와 테스트 데이터로 분할할 수 있습니다. 아래는 데이터를 분할하는 예제 코드입니다.
from sklearn.model_selection import train_test_split
X = # 특성 데이터
y = # 타겟 데이터
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
위 코드에서,
X
는 전체 특성 데이터를 나타냅니다.y
는 전체 타겟 데이터를 나타냅니다.test_size
는 테스트 데이터가 차지하는 비율을 나타내며, 일반적으로 0.2(20%)로 설정됩니다.random_state
는 데이터를 분할할 때 셔플링을 위한 시드(seed) 값으로, 같은 결과를 얻고 싶을 때 동일한 값을 유지해야 합니다.
위 코드를 실행하면, X_train
, X_test
, y_train
, y_test
에 각각 학습 데이터와 테스트 데이터가 저장됩니다.
데이터를 분할할 때는 주어진 데이터의 성격에 맞게 적절한 비율을 선택하고, 시드 값을 설정함으로써 재현성을 확보해야 합니다.
scikit-learn
라이브러리를 사용하면 간편하게 데이터를 분할할 수 있으며, 모델 학습과 평가에 필요한 데이터를 쉽게 구성할 수 있습니다.
이상으로, Python을 사용하여 데이터를 분할하는 방법에 대해 알아보았습니다.
참고 자료
scikit-learn
라이브러리 공식 문서: scikit-learn.orgtrain_test_split
함수 설명서: [scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html)