강의

멘토링

커뮤니티

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

gusdlseld0089님의 프로필 이미지
gusdlseld0089

작성한 질문수

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

[작업형2] 연습문제 섹션 3

[작업형2] 연습문제 섹션 3

해결된 질문

작성

·

8

0

안녕하세요 선생님! 섹션 3 처럼 object가 많이 나왔을때 labelencoder를 하지 않고

cols = train.select_dtypes(include='object').columns
for col in cols:
    set_train = set(train[col])
    set_test= set(test[col])
    same = (set_train == set_test)
    if same:
        print(col, "\t카테고리 동일함")
    else:
        print(col, "\t카테고리 동일하지 않음")

print("\n ===== target 기술 통계 =====")
print(train['price'].describe())


이렇게 하는 이유가 궁금합니다!! 이런것도 외우고 가야될까요?

답변 2

0

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

이건 EDA에서 한 것 입니다. 레이블 인코딩은 전처리 영역입니다.

EDA와 전처리는 별개에요! EDA는 데이터 확인용입니다. 점수에 아무런 영향이 없어요

특정 컬럼에서 카테고리가 같은지 확인하는 코드입니다.

예시문제와 같이 카테고리가 다를 때 찾기 위해 작성했으며
더 간단하게는 아래 영상을 참고해 주세요

7. [빅이시] 빅데이터 분석기사 이제 시작 과정 (단기 준비자 또는 복습용)

 

 

0

안녕하세요, 인프런 AI 인턴입니다. gusdlseld0089님께서 주신 질문에 대해 답변드리겠습니다.

해당 코드는 traintest 데이터셋 내의 범주형(Object 타입) 데이터 칼럼의 고유값을 비교하여, 같은 범주를 가진 칼럼을 바로 인코딩하는 과정을 확인하기 위한 것입니다. 이 경우, LabelEncoder가 아니라 각 칼럼의 유니크 값이 같은지 여부를 통해 데이터를 처리하는 전략을 제시하고 있습니다.

코드의 의미

  1. 데이터 타입 기반 선택: select_dtypes 메소드를 통해 데이터셋 내에서 object 타입의 칼럼들만 선택합니다. 이는 주로 범주형 데이터를 대상으로 하며, 이러한 칼럼이 encoding의 대상이 됩니다.

  2. 세트 비교: 각 칼럼의 고유 값을 set 형태로 변환하여 traintest 데이터셋의 해당 칼럼을 비교합니다. 두 집합이 동일할 경우, 바로 인코딩 진행이 가능합니다.

  3. 범주형 일관성 확인: 이 비교 과정을 통해 데이터를 인코딩하기 전, traintest 특히 범주형 변수에서 동일한 집합의 범주를 가지는지 확인할 수 있습니다. 이는 데이터 일관성을 유지하는 데 중요하며, 불일치 시 인코딩 과정에서 추가적인 오류를 방지할 수 있습니다.

외울 필요성

이러한 과정은 실제 실전에서는 모범 사례로, 모든 상황에서 직접적으로 코드를 외우기보다는, 왜 이런 과정을 거치는지 이해하는 것이 중요합니다. 데이터를 인코딩할 때, 변수가 많은 경우에는 직접적인 비교나 확인 없이 진행할 경우 데이터 불일치 문제를 발견하기 어려울 수 있으며, 비교적 간단한 방법을 통해 미리 이런 문제를 방지할 수 있습니다.

더 많은 정보를 원하신다면 아래와 같은 관련 내용을 확인하실 수 있습니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.

현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

gusdlseld0089님의 프로필 이미지
gusdlseld0089

작성한 질문수

질문하기