본문 바로가기
Python/Data Analysis

[파이썬, Python] Pandas 모듈 - 🔟 원 핫 인코딩(One Hot Encoding)

by coding-choonsik 2023. 6. 13.
728x90
반응형
SMALL

1. 원 핫 인코딩(One Hot Encoding)

 

  • 범주형 데이터를 처리하기 위한 인코딩 방법
  • 더미변수를 생성
  • 원 핫 인코딩은 한 개의 요소는 1, 나머지 요소는 0 으로 만들어 카테고리형을 표현하는 방법
  • 예) df['혈액형_code']를 머신러닝/딥러닝 알고리즘에 넣어 데이터를 예측하려고 지시를 하면 컴퓨터는 값들간의 관계를 스스로 형성하게 됨 
    • 만약 B형은 1, O형은 2라는 값을 가지고 있을 때 컴퓨터는 'B형 + B형 = O형'이라는 이상한 관계를 맺을 수 있게 됨 
    •  별도의 column들을 형성해주고 1개의 column에는 1, 나머지는 0으로 넣어줌으로 'A, B, O, AB형의 관계는 서로 독립적이다'라는 카테고리로 표현해주는 방식을 사용

 

blood_map = {'A':0, 'B':1,'O':2, 'AB':3}  #컴퓨터는 b형+b형 =Og형이 아닐까?하는 관계성을 찾으려함
df['혈액형_code'] = df['혈액형'].map(blood_map)  # blood_map 딕셔너리를 이용해 '혈액형'컬럼의 각 원소마다 적용

df.head()

 

 

1-1. get_dummies()

  • 판다스 모듈에서 제공하는 원핫인코딩 적용 메서드
pd.get_dummies(df['혈액형_code'])

 

 

✅ df에 원핫인코딩을 적용하여 저장

df = pd.get_dummies(df, columns=['혈액형_code'])
df

 

 

728x90
반응형
LIST