2유형 object 컬럼 인코딩 관련 질문
인코딩시 concat을 사용하는 상황에 대해 질문이 있습니다.
1.train과 test의 unique한 값을 비교해서(set에 넣어서)
1) 만약 종류가 완전히 같을 경우
one-hot 인코딩 : train, test 각각 get_dummies
label 인코딩 : for문 내부에서 train은 fit_transform, test는 transform
2) 갯수는 다르지만 train의 종류가 test의 종류를 모두 포함 할 경우
one-hot 인코딩 : concat한 후 get_dummies 한 후 분리
label 인코딩 : for문 내부에서 train은 fit_transform, test는 transform
3) 각자 서로에게 없는 종류를 가진 경우
one-hot 인코딩 : concat한 후 get_dummies 한 후 분리
label 인코딩 : concat한 후 fit_transform 한 후 분리
이렇게 구분하면 되는건가요?
2.또한 궁금한게, 굳이 저렇게 상황별로 외우지 말고 그냥 무조건 concat해서 인코딩 후 분리하는 전략은 어떤지 의견이 궁금합니다.
답변 2
0
네 정확히 이해하고 계세요!!
무조건 합치는 것 ok!!! 다 적용됩니다.
참고로, 예시문제에서는 카테고리가 다른 문제를 출제하고 있지만
실제 기출에선 아직 한번도 카테고리가 다른 경우는 없었어요
0
안녕하세요, 인프런 AI 인턴입니다. 김지환님.
인코딩 시 concat을 사용하는 방식에 대해 고민하시는 부분 이해합니다. 머신러닝 모델을 학습시킬 때 데이터 전처리 과정은 매우 중요하며, 특히 train 데이터와 test 데이터의 일관성을 유지하는 것이 핵심입니다.
상황별 인코딩 접근 방법:
- 기본적으로 train과 test가 동일한 피처 값을 가질 때는 별도로 분리해 처리해도 무방합니다. 하지만, 하나라도 다른 경우가 있으면 항상
concat을 사용하여 원-핫 인코딩 또는 라벨 인코딩을 진행한 후 분리하는 것을 추천드립니다.
- 라벨 인코딩의 경우, train에 없는 카테고리 값이 test에 있을 경우 문제가 될 수 있어 무조건
concat을 통해 fit한 후 나누는 것도 일관성을 보장하는 좋은 방법입니다.
- 기본적으로 train과 test가 동일한 피처 값을 가질 때는 별도로 분리해 처리해도 무방합니다. 하지만, 하나라도 다른 경우가 있으면 항상
무조건 concat 후 인코딩 후 분리 전략:
- 무조건
concat을 사용하여 전처리한 후 다시 분리하는 전략은 특히 대부분의 사용자와 산업에서 안전하고 많이 사용하는 방법입니다. 이는 데이터의 범주형 컬럼들 간의 불일치로 인해 발생할 수 있는 오류를 방지하는 데 효과적입니다.
- 이 방법은 복잡하지 않으며, 코드 유지보수가 용이하고, 데이터 일관성을 보장하기 때문에 추천드릴 만한 방법입니다.
- 무조건
궁금증을 해소하기 위해 유용한 자료를 추천드리면, 다음과 같은 사이트에서 추가 정보를 찾을 수 있습니다:
- “작업형2 유형 질문들”: 다양한 상황에 대한 인코딩의 기법과 전략에 대해 논의하는 게시물입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
문제에 첨부된 예시와 실제 출력된 샘플 비교
0
4
1
원핫 인코딩 관련
0
9
1
타겟 분리
0
7
1
Id 삭제
0
9
1
roc_auc_score 질문: 작업형2 모의문제3 09분 48초
0
12
1
원핫인코딩 코드 질문
0
12
1
map 함수 사용 필수적인가요
0
16
1
수강 기한 연장 문의드립니다.
0
21
1
34강 평가지표
0
25
2
103강 작업2형 전처리(레이블인코딩 부분) 오류
0
17
2
작업형1_section14 문의
0
15
2
작업형1_연습문제 7번 관련입니다.
0
17
2
데이터 프레임 슬라이싱 혹은 데이터 선택하기가 어렵습니다.
0
18
2
크로스 밸리데이션 질문
0
22
2
로지스틱 회귀분석 질문
0
20
2
수치형 데이터만 선택하여 푸는 경우에 오답확률이 높아질까요?
0
26
2
하이퍼파라미터 변수
0
33
2
52강 이원분산분석
0
27
2
실제시험환경에서 작업형1,2,3의 문제풀이 순서
0
35
2
독립표본검정
0
27
2
tranform을 쓰라는 힌트는 어디서 얻을 수 있나요??
0
40
2
df.describe() 사용을 자제해야할까요?
0
38
2
shape 결과에 대한 문의
0
40
2
자료 문의
0
31
2





