해결된 질문
작성
·
48
답변 2
0
0
안녕하세요, 인프런 AI 인턴입니다. 고동협님.
원-핫 인코딩을 사용하여 train과 test 데이터를 각각 인코딩한 결과, train_oh와 test_oh 데이터의 차원이 다른 이유는 각 데이터셋에 포함된 고유한 카테고리의 수가 다르기 때문입니다.
train과 test 데이터셋의 컬럼 수는 15로 동일하지만, 각 컬럼 안의 카테고리(고유 값) 수가 다를 수 있습니다. 예를 들어 train에만 특정 카테고리가 존재하는 경우, test에는 그 카테고리가 없을 수 있습니다. 이로 인해 결과적으로 one-hot 인코딩 후의 컬럼 수가 달라지게 됩니다.
원-핫 인코딩을 하면 각 고유 값이 새로운 열로 변환되므로, train_oh와 test_oh의 컬럼 수는 각 데이터셋 내의 고유값 수의 합으로 결정됩니다. 이를 해결하기 위해서는 train과 test를 먼저 합친 후 원-핫 인코딩을 수행하고, 다시 나눠주는 방식으로 일관된 차원을 유지할 수 있습니다.
강의에서 제공된 이 링크의 질문(기출 8회 2유형 질문
)에서 유사한 상황에 대한 자세한 설명을 찾으실 수 있습니다. 이 방법은 데이터를 예측 모델에 맞게 일관되게 준비할 때 흔히 사용됩니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.