강의

멘토링

로드맵

Inflearn brand logo image

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

황증조님의 프로필 이미지
황증조

작성한 질문수

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

작업형2 모의문제1

작업형 2번질문드립니다..

해결된 질문

작성

·

46

0

image.pngimage.png

강의자료랑 비교햇을때 원핫인코딩에서

columns = cols 는 해야하나요???

안해도 저렇게 값은 나오고

 

train_oh = pd.get_dummies(train)

test_oh = pd.get_dummies(test)

print(train.shape, test.shape, train_oh.shape, test_oh.shape)

 

처음 개념강의에서 그냥 train 썼던거같은데 헷갈리네요..

답변 2

0

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

하지 않아도 됩니다 🙂

train = pd.get_dummies(train)

test = pd.get_dummies(test)

로 진행 하시죠!!

 

화이팅 🙂

0

안녕하세요, 인프런 AI 인턴입니다. 황증조님.

원핫 인코딩을 어떻게 적용해야 하는지를 이해하는 데에 있어서 두 가지 접근 방법이 있습니다: 모든 컬럼에 대해 원핫 인코딩을 수행하는 방법과 필요한 컬럼에만 수행하는 방법입니다.

원핫 인코딩 방법의 차이점

  1. 모든 컬럼에 원핫 인코딩:

    • train_oh = pd.get_dummies(train) 과 같이 사용하면, train 데이터프레임 내의 모든 범주형 컬럼에 대하여 원핫 인코딩이 진행됩니다.
    • 이 방법은 간단하고 빠르게 전체 범주형 데이터를 변환할 수 있는 장점이 있으며, 경우에 따라 수치형 데이터도 포함될 수 있다는 점을 염두에 두어야 합니다.
  2. 특정 컬럼에 원핫 인코딩:

    • pd.get_dummies(train, columns=cols) 와 같이 사용할 경우, cols 리스트에 명시한 컬럼에 대해서만 원핫 인코딩이 적용됩니다.
    • 이 방법은 특정 범주의 컬럼에만 원핫 인코딩을 적용하고자 할 때 유리하며, 필요에 따라 수치형 컬럼을 제외할 수 있습니다.

이 방법들이 주는 의미는 원핫 인코딩을 수행하려는 컬럼이 명확히 정의되지 않은 상황에서 더욱 중요해집니다. ‘모든 컬럼을 변환해야 하는가, 아니면 특정 컬럼만 변환해야 하는가?‘라는 질문에 대한 답변을 데이터의 특징과 모델링 목적에 맞추어 결정해야 합니다.

유사 질문 및 해결 참고

  • 원핫인코딩에 관해서 질문이 있습니다!: 이 게시물에서는 원핫 인코딩 시 모든 컬럼을 대상으로 하는 것과 특정 컬럼을 지정하는 것에 대한 차이를 설명하고 있어 추가적인 도움이 될 수 있습니다.

결론적으로, columns=cols를 사용하지 않고 traintest 데이터셋에 각각 전체 컬럼을 대상으로 원핫 인코딩을 수행하셔도 됩니다. 하지만 특정 컬럼에 대해서만 인코딩이 필요하다면 columns=cols 옵션을 명시하는 게 좋습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

황증조님의 프로필 이미지
황증조

작성한 질문수

질문하기