OneHotEncoder()와 get_dummies() 차이가 있는지요
OneHotEncoder()가 좀 더 쓰기 편한 것처럼 느껴지는, 빅분기 시험 준비에서는 get_dummies()를 사용하는 예가 더 많이 보이는 것 같습니다. get_dummies()를 더 많이 사용하는 이유가 어떻게 되는지요?
답변 2
0
작성 코드가 좀 더 간단해서 get_dummies() 를 사용하고 있어요!
(범주형 카테고리 자동선택, 변수명 자동처리 등)
만약 OneHotEncoder()도 가능하다면 어떤 것을 사용해도 됩니다.
화이팅입니다:)
0
안녕하세요, 인프런 AI 인턴입니다.
rainyshiny님, OneHotEncoder()와 get_dummies()는 모두 변수를 원-핫 인코딩하는 방법으로, 각기 장단점이 있습니다.
get_dummies() vs. OneHotEncoder()
get_dummies():- Pandas 기반:
get_dummies()는 Pandas에서 제공하는 함수로, DataFrame의 범주형 열을 쉽게 원-핫 인코딩할 수 있습니다. 비교적 사용이 간단하며, DataFrame을 직접 다루고 있는 경우에 많이 사용됩니다.
- 간편함: 대부분의 데이터 전처리 과정에서 쉽게 적용 가능하며, 범주만 지정해주면 되어 코드가 간단해집니다.
- 즉시 변환: 별도의 fit 과정 없이 데이터를 바로 인코딩할 수 있어 실습이나 데이터 탐색 시에 유리합니다.
- Pandas 기반:
OneHotEncoder():- Scikit-learn 기반: 주로 머신러닝 파이프라인 내에서 사용되며, fit-transform 메서드를 통해 인코딩 과정을 수행합니다.
- 다양한 옵션: drop 옵션을 통해 첫 번째 카테고리를 제거하는 등 더 다양한 설정이 가능합니다.
- 모델링 파이프라인: Scikit-learn의 파이프라인과 통합적으로 사용할 때 유리합니다. 특히, fit 과정을 따로 둠으로써 테스트 데이터에도 동일한 인코딩을 보장할 수 있습니다.
- Scikit-learn 기반: 주로 머신러닝 파이프라인 내에서 사용되며, fit-transform 메서드를 통해 인코딩 과정을 수행합니다.
사용 이유
- Pandas DataFrame 사용 시 편리함:
get_dummies()은 바로 DataFrame에서 활용할 수 있어 간단하고 빠른 작업에 유리합니다. 작업형 문제에서는 빠른 해답과 효율적인 코드 작성이 중요하기 때문에 자주 사용되는 것으로 보입니다.
- 간단한 원-핫 인코딩: 데이터 탐색이나 전처리 시, 간단하게 범주형 변수를 변환하는데 적합합니다.
- 코드 간결성:
get_dummies()는 별도의 fit 단계가 필요하지 않아서 데이터 탐색 시 선호될 수 있습니다.
둘 중 어떤 방법을 사용할지는 프로젝트의 필요와 코딩 환경에 따라 달라질 수 있습니다. 만약 데이터 전처리가 복잡하거나 머신러닝 파이프라인에 통합하려면 OneHotEncoder()를 고려하는 것이 좋으며, 전처리나 분석이 간단한 경우 get_dummies()가 편리할 수 있습니다.
관련 내용을 더 이해하고 싶으시다면, 다음 작업형 2유형 질문을 확인해보세요.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
작업형 1 유형 부분
0
16
2
작업형 1 (삭제예정, 구 버전)
0
34
2
수강기간 연장 문의드립니다.
0
26
1
2유형 레이블 인코딩 VS 원핫 인코딩
0
25
3
수강기간 연장 문의드립니다.
0
28
1
인덱스 슬라이싱
0
28
2
질문 드립니다.
0
46
2
강의 내용 관련 질문드립니다~
0
43
2
수강 연장 문의
0
57
2
강의자료 일괄 다운로드
0
52
2
수강기간 연장 문의드립니다
0
41
2
list 문제 질문드립니다~
0
35
2
빅분기 실기 12회 재도전
0
54
2
강의 기간 연장 가능여부 검토 요청건
0
39
2
수강기간 연장 문의 드립니다
0
43
2
수강기간 연장 문의드립니다
0
50
2
질문이요
0
56
2
수강기간 연장 문의드립니다.
0
58
2
문제 3-2 질문드립니다
0
47
2
수강기간 연장 문의 드립니다.
0
61
2
변수, 칼럼 , df 구분
0
51
2
수강기간 연장 문의드립니다.
0
50
2
수강기간 연장 문의
0
49
2
수강기간 연장 문의드립니다.
0
42
2





