기출3회 작업형2

예측 단계에서 다음과 같은 오류가 발생했는데, 이유가 뭘까요?
답변 2
0
안녕하세요, 인프런 AI 인턴입니다.
shs4166님이 경험하신 문제는 훈련 데이터와 테스트 데이터 간의 특성(컬럼) 불일치로 인한 것 같습니다. 이는 get_dummies 나 다른 인코딩을 통해 데이터 처리 시 자주 발생하는 문제입니다.
문제의 원인
특성 불일치는 훈련 데이터에 존재하는 특정 범주형 값이 테스트 데이터에는 없거나, 그 반대의 상황으로 인해 발생할 수 있습니다. 이로 인해 훈련 데이터와 테스트 데이터 간의 컬럼 수가 달라져 모델이 예측 과정을 진행하는데 오류가 생깁니다.
해결 방법
- 훈련과 테스트 데이터 통합 및 인코딩:
- 훈련과 테스트 데이터를 하나의 데이터프레임으로 합친 후 한 번에 인코딩을 진행합니다. 이렇게 하면 모든 범주형 값이 동일한 컬럼으로 인코딩됩니다.
import pandas as pd - 훈련과 테스트 데이터를 하나의 데이터프레임으로 합친 후 한 번에 인코딩을 진행합니다. 이렇게 하면 모든 범주형 값이 동일한 컬럼으로 인코딩됩니다.
# 데이터 결합
full_data = pd.concat([train, test], axis=0, sort=False)
# 인코딩
full_data_encoded = pd.get_dummies(full_data)
# 다시 분할
train_encoded = full_data_encoded[:len(train)]
test_encoded = full_data_encoded[len(train):]
“`
- 컬럼 일치 확인:
- 모든 데이터프레임의 컬럼이 동일한지 확인하여 필요한 경우 누락된 컬럼에 0을 채워 넣습니다.
- 모든 데이터프레임의 컬럼이 동일한지 확인하여 필요한 경우 누락된 컬럼에 0을 채워 넣습니다.
이 문제와 유사한 다른 질문의 답변에서는 추가적인 설명과 코드 예제를 확인할 수 있습니다. 유사한 경험을 하신 다른 수강생들의 사례를 참고하시길 권장드립니다:
- 예시문제 작업형2 test 데이터 예측시 발생하는 오류
- test파일 예측에서 자꾸 에러가 발생합니다
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
뒤로가기 버튼 같은 것이 있나요?
0
28
1
강의 연장 문의
0
32
1
출력값 질문
0
31
2
수업노트가 어디에 있나요?
0
29
1
실기시험 제출관련
0
160
2
6.20 작업형 2 과적합
0
169
3
코딩팡 장업형2 베이스 라인 인코딩 종류 질문
0
52
2
로지스틱회귀, 회귀
0
52
2
회귀 문제를 풀때 질문입니다.
0
59
1
불균형 처리 후 성능이 더 낮아졌다면,
0
66
2
실기 체험 제2유형 에러 문의
0
66
1
LIGHTGBM 으로 하면 pred값이 소수점 6자리까지 나오는게 맞나요
0
52
2
3번문제 등분산 가정
0
50
2
작업형3 target 형 변환 질문
0
38
2
[작업형1] 연습문제 섹션1 ~ 10 의 section4
0
40
3
원핫인코딩과 레이블 인코딩에서 concat
0
62
2
제2유형 질문입니다.
0
49
2
C()
0
44
2
작업형 2에서 strafity 적용 유무
0
53
2
수강 기간 연장 가능 여부 문의드립니다.
0
63
1
ols
0
44
2
2유형 작성관련 질문(일반 심화)
0
41
2
2유형 작성관련 질문
0
42
2
2유형 object컬럼 개수 다르면
0
49
2





