일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 경사하강법
- 디자인패턴
- 로스트아크
- 의료 ai 대학원 월급
- 딥러닝
- 디자인 패턴
- 정규화
- 영화 api
- API
- 코딩테스트
- Dehaze
- 인공지능
- DCP
- MLP
- 딥러닝 실험 깃 버전관리
- 대학원 월급
- 자바
- pandas
- 통계학
- C# 프로젝트
- 파이썬 경사하강법
- 파이썬
- 자바 영화 api
- 대학원 급여
- python
- 자바 프로젝트
- 인공지능 깃 버전관리
- 활성화 함수
- 백준
- 머신러닝
Archives
- Today
- Total
대학원 일기
전처리 기법: 원-핫 인코딩(One-Hot Encoding), 구간화(Data bining) 본문
이전 포스팅인 '결측치: 정규화(Normalization)'를 이어서 작성합니다.
https://kys0411.tistory.com/177
전처리 기법: 정규화(Normalization)
이전 포스팅인 '전처리 기법: 이상치(Outlier)'를 이어서 작성합니다. https://kys0411.tistory.com/176 전처리 기법: 이상치(Outlier) 이전 포스팅인 '결측치: 중복 데이터'를 이어서 작성합니다. https://kys0411.ti
kys0411.tistory.com
원-핫 인코딩(One-Hot Encoding)
원 핫 인코딩은 머신러닝이나 딥러닝 프레임워크에서 범주형 데이터를 지원하지 않는 경우 사용한다. 이는 카테고리별 이진 특성을 만들어 해당하는 특성만 1, 나머지는 0으로 만드는 방법입니다.
이전 포스팅에서 사용한 trade 데이터셋을 사용하겠다.
# trade 데이터의 국가명 컬럼 원본
print(trade['국가명'].head())
trade의 국가명 칼럼은 중국, 미국, 일본, 미국이 있는 것을 확인했다. 원 핫 인코딩은 pandas 라이브러리를 사용하여 쉽게 구현할 수 있다. pandas의 get_dummies의 함수를 통해 쉽게 할 수 있다.
# get_dummies를 통해 국가명 원-핫 인코딩
country = pd.get_dummies(trade['국가명'])
country.head()
이를 pandas의 concat 함수로 데이터 프레임 trade와 위에서 만든 country를 합쳐준다.
trade = pd.concat([trade, country], axis=1)
trade.head()
위 사진처럼 결과가 나온다. 원 핫 인코딩으로 범주형 데이터인 '국가명' 칼럼을 수치형 데이터로 바꾸었다. 마지막으로 기존에 있던 '국가명' 칼럼을 삭제해준다.
trade.drop(['국가명'], axis=1, inplace=True)
trade.head()
구간화(Data bining)
-
히스토그램과 같이 연속적인 데이터를 구간을 나눠 분석할 때 사용하는 방법
-
구간화(Data binning 혹은 bucketing )이라고 부릅니다.
-
pandas의 cut 과 qcut 을 이용해 수치형 데이터를 범주형 데이터로 변형시키도록 하겠습니다.
-
cut 을 사용하기 위해 우선 구간을 지정
-
cut 함수에 데이터와 구간을 입력하면 데이터를 구간별로 나눠줍니다.
-
구간별로 값이 몇 개가 속해 있는지 value_counts() 로 확인
-
이렇게 특정 구간을 지정해 줘도 되고, 구간의 개수를 지정해 줄 수도 있습니다.
-
bins 옵션에 정수를 입력하면 데이터의 최솟값에서 최댓값을 균등하게 bins 개수만큼 나눠줍니다
-
qcut 은 구간을 일정하게 나누는 것이 아니라 데이터의 분포를 비슷한 크기의 그룹으로 나눠줍니다.
'AI > 인공지능 기초' 카테고리의 다른 글
딥러닝 들여다보기 (0) | 2023.11.13 |
---|---|
MLP(Multi Layer Perceptron) 과정 (1) | 2023.11.13 |
전처리 기법: 정규화(Normalization) (1) | 2023.11.12 |
전처리 기법: 이상치(Outlier) (1) | 2023.11.12 |
전처리 기법: 중복 데이터 (0) | 2023.11.11 |
Comments