Susan and Data

파이썬(판다스)_원핫인코딩을 해보자! 본문

IT/Python

파이썬(판다스)_원핫인코딩을 해보자!

IamSusan 2023. 4. 16. 01:56

원핫인코딩

 

[원핫인코딩]

- scikit-learn의 머신러닝 알고리즘은 입력값으로 문자열을 받는 것을 허락하지 않음.

- 이를 위한 전처리 방법이 원핫인코딩

- 고유값에 해당하는 컬럼에만 1, 나머지 컬럼에는 0

 

[함수]

1. select_dtyps: 열에 포함된 데이터들을 type 기준으로 인덱싱

 * include=None, exclude=None

2. map: 각 요소에 특정한 함수를 적용시킬 때 사용하는 함수(단일컬럼)

3. pd.get_dummies: 더미로 가변수화

 * 수치형 데이터로만 변환을 하게 되면 서로 간의 관계성이 생성되어(ex. B형과 AB형은 0형이다.) 잘못된 학습일 일어날 수 있으므로 0과1이라는 False, True값을 넣어줌으로서 문제를 막아줌.

4. prefix: 공통된 시작 단어 지정

 

[Type]

데이터 타입 예시
숫자 유형 int 정수형 x=20
float 실수형 x=20.5
시퀀스 유형 str 문자열 x="Hello World"
list 리스트 x=["apple","banana","cherry"]
tuple 튜플 x=("apple","banana","cherry")
맵핑 유형 dict 딕셔너리 x={"name":"John","age":36}
세트 유형 set 집합 x={"apple","banana","cherry"}
불리언 유형 bool 논리형 자료형(True/False) x=true/ x=false

* tuple(튜플): 리스트처럼 요소를 일렬로 저장하지만, 안에 저장된 요소를 변경, 추가, 삭제 불가

* dict(딕셔너리): key와 value로 이루어진 사전형 집합

* set(집합): 순서가 없으며 중복 불가

 

Q. 데이터타입이 object인 컬럼만 출력

Q. 데이터타입이 object가 아닌 컬럼만 출력

Q. '혈액형코드' 컬럼을 생성하고, 혈액형이 A인 경우 0, B인 경우 1, AB인 경우 2, O인 경우 3의 데이터 추가

Q. 혈액형코드를 더미로 가변수화

Comments