인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

작성자 없음

작성자 정보가 삭제된 글입니다.

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

6회 기출유형 (작업형2)

6회 작업형2 라벨인코딩

해결된 질문

작성

·

342

0

  • 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!

  • 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요

  • 먼저 유사한 질문이 있었는지 검색해보세요

원핫인코딩 말고 라벨인코딩으로 하면 에러가 뜨던데..

 

라벨인코딩으로는 작업코드가 어떻게 되나요?

타겟데이터 pop하고 검증데이터 분리 전에 라벨인코딩 진행했는데 이런 에러가 뜹니다,,

# print(train.shape, test.shape)
# train = pd.get_dummies(train) # 전체를 넣으면 train에서 object값만 인코딩하고 수치형 데이터는 그대로 둚
# test = pd.get_dummies(test)
# print(train.shape, test.shape)
cols = train.select_dtypes(include='object').columns
from sklearn.preprocessing import LabelEncoder

le = LabelEncoder()
for col in cols:
  train['col'] = le.fit_transform(train['col'])
  test['col'] = le.transform(test['col'])
---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
/usr/local/lib/python3.10/dist-packages/pandas/core/indexes/base.py in get_loc(self, key, method, tolerance)
   3801             try:
-> 3802                 return self._engine.get_loc(casted_key)
   3803             except KeyError as err:


4 frames


pandas/_libs/hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()

pandas/_libs/hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()

KeyError: 'col'
The above exception was the direct cause of the following exception:

KeyError                                  Traceback (most recent call last)
/usr/local/lib/python3.10/dist-packages/pandas/core/indexes/base.py in get_loc(self, key, method, tolerance)
   3802                 return self._engine.get_loc(casted_key)
   3803             except KeyError as err:
-> 3804                 raise KeyError(key) from err
   3805             except TypeError:
   3806                 # If we have a listlike key, _check_indexing_error will raise

KeyError: 'col'

답변 1

0

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

col은 컬럼명이 아니라 변수 입니다.

train['col'] = le.fit_transform(train['col'])
test['col'] = le.transform(test['col'])

 

다음과 같이 사용하셔야 해요!

train[col] = le.fit_transform(train[col])
test[col] = le.transform(test[col])

작성자 없음

작성자 정보가 삭제된 글입니다.

질문하기