빅데이터분석기사/코드

[빅데이터분석기사] 범주변수의 변환(one-hot-encoding)

EveningPrimrose 2022. 6. 11. 00:02
반응형

1.  데이터범주-연속-레이블로 나누기

# vote(유권자 선거행동) 데이터셋 불러오기 및 확인
import pandas as pd
data = pd.read_csv('vote.csv', encoding='utf-8')
data.head()

# 범주변수와 기타 변수를 각각 X1과 XY로 나누기
X1 = data[['gender', 'region']]
XY = data[['edu', 'income', 'age', 'score_gov', 'score_progress', 'score_intention', 'vote', 'parties']]

 

2. 범주형 변수의 One-hot-encoding 변환

# 성별(gender)과 출신지역(region)의 숫자를 문자로 변환
X1['gender'] = X1['gender'].replace([1, 2], ['male', 'female'])
X1['region'] = X1['region'].replace([1, 2, 3, 4, 5], ['Sudo', 'Chungcheung', 'Honam', 'Youngnam', 'Others'])
# 변환된 범주형 데이터(X1) 확인
X1.head()

# 범주변수를 one-hot-encoding으로 변환 및 확인
X1_dum = pd.get_dummires(X1)
X1_dum.head()

 

3. 자료 통합 및 저장하기

# 변환 데이터와 기타 변수를 한 데이터셋으로 통합 및 확인
Fvote = pd.concat([X1_dum, XY], axis=1)
Fvote.head()

# 통합된 데이터를 'Fvote.csv' 파일로 저장 내보내기
Fvote.to_csv('Fvote.csv', index=False, sep=',', encoding='utf-8')

 

 

반응형