1 데이터 전처리를 위한 데이터 병합
데이터 전처리는 학습 데이터 세트와 시험 데이터 세트에 모두 적용해 주어야 전처리한 내용대로 학습하고 예측할 수 있다. 학습 데이터 세트와 시험 데이터 세트를 각각 전처리할 수도 있지만, 실수를 줄이기 위해 두 데이터를 병합해서 전처리한 뒤 다시 나누는 방법을 사용하겠다.
우선 두 데이터를 병합한다. pandas의 concat()으로 학습 데이터와 시험 데이터를 하나의 데이터 프레임으로 만들어 주자. concat()을 사용하면 기본값이 axis=0으로 이때 행의 이름이 같은 데이터를 병합할 수 있다.
# 전처리를 위해 데이터 병합 raw = pd.concat([train, test]) raw.shape
실행 결과
(54785, 3)
데이터를 병합한 뒤에는 잘 병합됐는지 head()와 tail()로 확인한다. 결과를 보면 전처리 후 학습 데이터의 topic_idx에만 정답이 있고, 시험 데이터의 topic_idx에는 NaN(Not a Number)으로 표시된다. 나중에 이를 이용해 topic이 있으면 학습 데이터, 없으면 시험 데이터로 다시 나눠 줄 것이다.