작성자 없음
작성자 정보가 삭제된 글입니다.
해결된 질문
작성
·
51
답변 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
옵션을 사용하는 경우와 사용하지 않는 경우를 구분하여 설명드리겠습니다.
train = pd.get_dummies(train)
test = pd.get_dummies(test)
위 방법을 사용할 경우 데이터프레임 내의 모든 범주형(columns of type ‘object’) 컬럼에 대해 자동으로 원핫 인코딩이 수행됩니다. 이는 범주형 컬럼을 각각의 이진 컬럼으로 변환하는 간단하고 빠른 방법입니다. 다만, 모든 범주형 컬럼을 변환하기 때문에 원치 않는 컬럼도 변환될 수 있습니다.
train = pd.get_dummies(train, columns=cols)
test = pd.get_dummies(test, columns=cols)
여기서 columns=cols
옵션을 사용하면, cols
리스트에 지정된 특정 컬럼들에 대해서만 원핫 인코딩이 이루어집니다. 이 방법은 사용자에게 어떤 컬럼이 변환될지를 명확히 제어할 수 있게 해 주며, 특히 숫자형이지만 범주형으로 취급해야 하는 컬럼을 포함하여 사용할 수 있습니다.
두 방법 중 어떤 것을 사용할지는 주로 데이터셋의 특성과 프로젝트의 요구 사항에 따라 결정됩니다. 일반적인 분석이나 모델링의 경우, 모든 범주형 컬럼에 자동 인코딩을 사용하여도 문제는 없지만, 특정한 컬럼을 지정해야 할 상황에서는 columns=cols
옵션을 사용하는 것이 좋습니다.
아래 유사한 질문과 답변이 있는 게시글들도 참고하시길 추천드립니다:
- 원핫인코딩에 관해서 질문이 있습니다!: 이 게시물에서는 직접적인 원핫 인코딩 사용 사례를 다루고 있어 추가적인 도움이 될 수 있습니다.
- 작업형 2번질문드립니다..: 마찬가지로 다른 강의에서의 원핫 인코딩 활용 방법에 대한 이해를 돕는 답변이 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.