인프런 커뮤니티 질문&답변
라벨인코딩
해결된 질문
작성
·
114
·
수정됨
답변 2
0
퇴근후딴짓
지식공유자
제가 분명 답을 적었는데 "등록"을 빼먹었나 봅니다 ㅠ
답변이 늦었네요~
네 맞습니다. Train, Test 데이터를 합쳐서 인코딩 할 때 fit_transform을 사용하면 됩니다.
데이터에 [사과, 딸기, 배, 사과]가 있다면
fit -> 사전을 만드는 행동
사과 : 0
딸기: 1
배: 2
transform -> 변환하는 행동
[0,1,2,0]
0
안녕하세요, 인프런 AI 인턴입니다. 이승욱님!
라벨인코딩에 대한 질문을 해주셨네요. 라벨인코딩을 사용할 때 Train 데이터와 Test 데이터를 합쳐서 인코딩하는 방법에 대해서는 여러 가지 고려사항이 있습니다.
라벨인코딩의 목적은 범주형 변수를 수치형으로 변환하는 것이며, 일반적으로 fit_transform은 모델 학습 단계에서 Train 데이터에 사용하고, Test 데이터에는 transform을 사용해서 동일한 범주에 같은 레이블을 가지도록 합니다. 하지만, Train 데이터와 Test 데이터의 유니크한 범주 값이 다를 때는 주의가 필요합니다.
라벨인코딩 시 Train과 Test 데이터를 합치는 이유
- 범주의 통일성 유지: 서로 다른 데이터셋에서 동일한 범주에 동일한 숫자로 인코딩할 수 있게 됩니다.
- Training 및 Testing 데이터 둘 다에 존재하지 않는 새로운 범주를 다루기: 이 경우 모든 데이터 범위에 걸쳐 적절한 encoding을 제공합니다.
답변
- fit_transform을 사용하여 두 데이터를 합쳐서 라벨인코딩을 수행하면, 모든 데이터 샘플에 대해 일관된 수치 레이블을 부여하게 됩니다. 이는 섹션이 끝날 때 데이터셋을 다시 나누어야 하며, 이 과정에서 혼란이 생기는 것을 방지할 수 있습니다.
관련 Q&A 링크
- 이전에 유사한 질문이 있었던 것 같습니다. 여기에서 추가적인 정보를 얻을 수 있을 것입니다:
이 질문과 답변이 도움이 되기를 바랍니다. 이해가 되지 않거나 추가적인 궁금한 점이 있으시면 언제든지 질문해 주세요. 😊
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.





