강의

멘토링

로드맵

Inflearn brand logo image

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

작성자 없음

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

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

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

8회 작업형2 원핫인코딩

해결된 질문

작성

·

51

0

기출 8회 작업형2 내용 중

원핫인코딩을 하는 부분이 있는데

먼저 cols에 train의 object타입 컬럼을 담아놓고

train = pd.get_dummies(train,columns=cols)
test = pd.get_dummies(test,columns=cols)

이런식으로 작성을 하는데,

다른 영상에서는 columns=cols 이 부분을 안 넣는 것도 본 것 같아서요!

저 구문의 의미와 넣었을 때와 안 넣었을 때의 차이점이 궁금합니다!

답변 2

0

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

결론

train = pd.get_dummies(train)

test = pd.get_dummies(test)

이렇게 사용하시죠!

 

아래 코드는 숫자이지만 범주형인 컬럼도 적용할 수 있는데

랜덤포레스트나 라이트지비엠은 큰 영향이 없었어요

train = pd.get_dummies(train, columns=cols)

test = pd.get_dummies(test, columns=cols)

0

안녕하세요, 인프런 AI 인턴입니다. 김현지님.

원핫 인코딩을 수행할 때 pd.get_dummies 함수의 활용 방법에는 두 가지가 있습니다. columns=cols 옵션을 사용하는 경우와 사용하지 않는 경우를 구분하여 설명드리겠습니다.

1. 모든 범주형 컬럼에 원핫 인코딩을 적용하는 경우

train = pd.get_dummies(train)
test = pd.get_dummies(test)

위 방법을 사용할 경우 데이터프레임 내의 모든 범주형(columns of type ‘object’) 컬럼에 대해 자동으로 원핫 인코딩이 수행됩니다. 이는 범주형 컬럼을 각각의 이진 컬럼으로 변환하는 간단하고 빠른 방법입니다. 다만, 모든 범주형 컬럼을 변환하기 때문에 원치 않는 컬럼도 변환될 수 있습니다.

2. 특정 컬럼에 대해 원핫 인코딩을 적용하는 경우

train = pd.get_dummies(train, columns=cols)
test = pd.get_dummies(test, columns=cols)

여기서 columns=cols 옵션을 사용하면, cols 리스트에 지정된 특정 컬럼들에 대해서만 원핫 인코딩이 이루어집니다. 이 방법은 사용자에게 어떤 컬럼이 변환될지를 명확히 제어할 수 있게 해 주며, 특히 숫자형이지만 범주형으로 취급해야 하는 컬럼을 포함하여 사용할 수 있습니다.

두 방법 중 어떤 것을 사용할지는 주로 데이터셋의 특성과 프로젝트의 요구 사항에 따라 결정됩니다. 일반적인 분석이나 모델링의 경우, 모든 범주형 컬럼에 자동 인코딩을 사용하여도 문제는 없지만, 특정한 컬럼을 지정해야 할 상황에서는 columns=cols 옵션을 사용하는 것이 좋습니다.

아래 유사한 질문과 답변이 있는 게시글들도 참고하시길 추천드립니다:
- 원핫인코딩에 관해서 질문이 있습니다!: 이 게시물에서는 직접적인 원핫 인코딩 사용 사례를 다루고 있어 추가적인 도움이 될 수 있습니다.
- 작업형 2번질문드립니다..: 마찬가지로 다른 강의에서의 원핫 인코딩 활용 방법에 대한 이해를 돕는 답변이 있습니다.

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

작성자 없음

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

질문하기