인프런 커뮤니티 질문&답변

옥준호님의 프로필 이미지
옥준호

작성한 질문수

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

섹션 11 작업형2 구버전 문의

해결된 질문

작성

·

143

0

피처엔지니어링 부분에서

from sklearn.preprocessing import LabelEncoder
cols = ['주구매상품', '주구매지점']

for col in cols:
    le = LabelEncoder()
    X_train[col] = le.fit_transform(X_train[col])
    X_test[col] = le.transform(X_test[col])

X_train.head()

이 코드 실행했을때 ValueError: invalid literal for int() with base 10: '골프' 이런 에러가 뜨는데 이유가 무엇인가요..?

답변 1

0

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

train에는 없는 카테고리가 test에 있는 것이 아닐까 의심이 드네요! LabelEncoder는 학습 데이터에 기반하여 레이블을 생성하므로, 테스트 데이터에 학습 데이터에 없는 새로운 범주가 있다면 문제가 발생할 수 있습니다.

train과 test 합쳐서 인코딩이 필요할 것 같습니다. 🙌

옥준호님의 프로필 이미지
옥준호

작성한 질문수

질문하기