티스토리 뷰
안녕하세요. 죠쵸입니다.
Pandas, One Hot Encoding이라는 주제로 포스팅하고자 합니다.
One Hot Encoding 을 간단히 설명하자면, Data를 Machine Learning 알고리즘이 알기 쉽게 변환해 주는 것입니다. 즉, 카테고리성 데이터를 각 카테고리별 컬럼으로 추가생성하고 Machine Learning 알고리즘이 알기 쉽도록(?), 예측을 더 잘 할 수 있도록 1과 0 또는 (True / False)로 값을 변환해 주는 것을 의미합니다.
캐글의 타이타닉 경진대회의 데이터를 예시를 보여 드리겠습니다. 참고로 캐글의 타이타닉 경진대회에 대한 포스팅은 이전 포스팅을 참고 부탁 드립니다.
2020/08/29 - [Data Science] - 캐글 타이타닉 데이터 분석 및 시각화
타이타닉 경진대회의 여러가지 데이터 컬럼 중에 Embarked 라는 컬럼이 있습니다. Embarked 컬럼은 탑승객이 어느 항구에서 탑승했는지를 C / S / Q 의 값으로 표기하고 있습니다. 아래의 코드 및 결과를 참조 부탁 드립니다.
print(train["Embarked"].head())
train["Embarked"].value_counts()
One Hot Encoding 하는 방법이 여러가지가 있을 텐데요. 이번에는 판다스를 이용해서 One Hot Encoding 하는 방법 2가지를 공유하도록 하겠습니다.
#One Hot Encoding 처리방법 1
train["Embarked_C"] = train["Embarked"] == "C" 을 설명 드리면, Embarked 컬럼 값이 C 일 때, True를, C가 아닐 때, False 값을 train["Embarked_C"]에 넣어주게 됩니다.
train["Embarked_C"] = train["Embarked"] == "C"
train["Embarked_S"] = train["Embarked"] == "S"
train["Embarked_Q"] = train["Embarked"] == "Q"
print(train.shape)
print(train[["Embarked", "Embarked_C", "Embarked_S", "Embarked_Q"]].head())
#One Hot Encoding 처리방법2
위의 방법은 각 값에 따라 직접 컬럼을 생성하고 값을 넣어주는 작업이 필요합니다. 하지만 판다스의 get_dummies()를 사용하면 간단히 생성할 수 있습니다.
train_embarked_dummies = pd.get_dummies(train.Embarked, prefix='Embarked')
train_embarked_dummies.head()
방문해 주셔서 감사합니다. 여러분의 공감하기(♥), 댓글과 구독은 저에게 힘이 됩니다.
이상으로 죠쵸였습니다.
'Data Science' 카테고리의 다른 글
[ML] TensorFlow 소개 (0) | 2024.08.11 |
---|---|
Pandas(판다스), concat() 함수 사용하기 (2) | 2020.09.20 |
국가통계포털(KOSIS)로 블로그 주제/키워드 선택하자 (6) | 2020.09.11 |
Pandas(판다스) 기초 기능 (0) | 2020.09.09 |
Pandas(판다스)는 무엇인가? (11) | 2020.09.08 |
- Total
- Today
- Yesterday
- python
- Leetcode
- 재귀함수
- Kaggle
- Leetcode255
- 파이썬 독학
- 영어공부
- Pandas(판다스)
- AdSense
- 캐글
- kule
- 티파니T1
- 판다스
- 데이터 분석
- English
- pandas
- 리트코드
- 328. Odd Even Linked List
- Study
- ai
- 리바이스사이즈
- 파이썬
- joecho
- 죠쵸
- Big Data
- 파이썬 기초
- 아디다스삼바화이트
- 큘가방
- ap news
- Machine Learning
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |