팬더스 get_dummies 기능의 효과적인 사용 방법
Updated on
파이썬의 팬더스 라이브러리에는 데이터 조작을위한 강력하고 다재다능한 함수가 많이 있으며 get_dummies 함수는 그 중 하나입니다. 이 튜토리얼은이 기능을 이해하고 데이터 전처리 작업에서 효과적으로 사용하는 데 도움이되도록합니다.
PyGWalker를 사용하여 Python에서 빠른 데이터 시각화를 만들 수 있습니다.
PyGWalker는 Jupyter Notebook 기반 환경에서 데이터 분석 및 시각화 워크 플로우를 가속화하는 데 도움이되는 오픈 소스 Python 프로젝트입니다.
PyGWalker (opens in a new tab)는 Pandas 또는 Polars Dataframe을 시각적 인 UI로 변환하여 변수를 드래그하여 그래프를 쉽게 만들 수 있습니다. 다음 코드를 사용하세요.
pip install pygwalker
import pygwalker as pyg
gwalker = pyg.walk(df)
이제 다음 온라인 노트북에서 PyGWalker를 실행할 수 있습니다.
그리고 깃허브에서 ⭐️를 꼭 주세요!
현재 PyGWalker 실행 (opens in a new tab) | 구글 코랩에서 PyGWalker 실행 (opens in a new tab) | PyGWalker 깃허브에 ⭐️ 주기 (opens in a new tab) |
---|---|---|
(opens in a new tab) | (opens in a new tab) | (opens in a new tab) |
팬더스 get_dummies 이해하기
get_dummies 함수는 범주형 데이터를 처리하는 데 강력한 도구입니다. 이 함수는 범주형 변수를 더미/표시 변수로 변환하여 각 범주형 변수의 고유 한 범주에 대한 새 열을 만듭니다. 원래 행에서 범주가 존재하는지 여부를 나타내는 0과 1을 사용합니다.
이것이 중요한 이유는 머신 러닝 알고리즘들은 일반적으로 수치 데이터와 작동하므로 범주형 데이터를 수치형으로 변환해야하기 때문입니다. 이것이 get_dummies 함수가 사용되는 곳입니다.
import pandas as pd
# 예시 데이터
data = pd.DataFrame({'애완 동물': ['고양이', '강아지', '새', '고양이']})
# get_dummies 적용하기
dummies_data = pd.get_dummies(data)
print(dummies_data)
이것은 다음과 같이 출력됩니다.
pets_bird pets_cat pets_dog
0 0 1 0
1 0 0 1
2 1 0 0
3 0 1 0
Get Dummies 함수의 구성 요소
get_dummies
함수는 동작을 상세하게 조정하기 위해 여러 매개 변수를 가지고 있습니다. 이 매개 변수들의 간단한 개요는 다음과 같습니다:
data
: 더미 변수를 생성할 입력 DataFrame 또는 Series입니다.prefix
: 더미 변수의 열 이름에 지정할 선택적인 문자열 접두사입니다.prefix_sep
: 접두사와 열 이름 사이에 사용할 선택적인 문자 구분 기호입니다. 기본값은_
입니다.dummy_na
: Boolean 값으로, NaN을 나타내는 열을 추가할지 여부를 결정합니다. False인 경우 NaN은 무시됩니다. 기본값은 False입니다.columns
: 더미 변수로 변환할 열 이름의 선택적인 목록입니다. 지정하지 않으면 모든 개체 및 범주 dtype 열이 변환됩니다.sparse
: True이면 SparseDataFrame을 반환하고, False이면 일반 DataFrame을 반환합니다. 기본값은 False입니다.drop_first
: 첫 번째 수준을 제거하여 k 범주 수준 중 k-1 더미를 가져오는 데 사용되는 부울 변수입니다. 이는 다중공선성을 방지합니다. 기본값은 False입니다.
Pandas Get Dummies의 실용적인 예
더욱 실용적인 get_dummies 함수의 예를 살펴보겠습니다.
1. prefix 매개 변수 사용
prefix
매개 변수를 사용하여 더미 변수 열 이름에 특정 접두사를 추가할 수 있습니다. 이를 통해 나중에 이러한 열의 출처를 식별하는 데 도움이 될 수 있습니다.
# prefix와 함께 get_dummies 적용
dummies_data_prefix = pd.get_dummies(data, prefix='pets')
print(dummies_data_prefix)
2. NaN 값을 처리하는 방법
실제 데이터를 처리할 때, 종종 누락된 값을 마주치게 됩니다. dummy_na
매개 변수를 사용하여 NaN 값을 위한 별도의 더미 열을 생성할 수 있습니다.
# NaN이 포함된 예제 데이터
data = pd.DataFrame({'pets': ['cat', 'dog', 'bird', None]})
# dummy_na와 함께 get_dummies 적용
dummies_data_nan = pd.get_dummies(data, dummy_na=True)
print(dummies_data_nan)
3. 여러 열 작업
get_dummies
함수는 여러 열에 대해 동시에 적용할 수 있습니다. 아래 예제에서는 'pets' 및 'color' 두 가지 범주형 열에 대해 더미 변수를 만듭니다.
# 여러 열이 포함된 예제 데이터
data = pd.DataFrame({'pets': ['cat', 'dog', 'bird', 'cat'], 'color': ['black', 'white', 'black', 'white']})
여러 열에 대해 get_dummies 적용하기
dummies_data_multi = pd.get_dummies(data, columns=['pets', 'color'])
print(dummies_data_multi)
## 결론
결론적으로 `pd.get_dummies()` 함수를 숙달하면 머신러닝 프로젝트에서 데이터 전처리 능력을 향상시킬 수 있습니다. 범주형 데이터를 처리하는 데 꼭 필요한 도구로써, 알고리즘에 적합한 형식으로 데이터가 표현되도록 보장합니다.