반응형
Pandas에는 정수 기반의 범주형 데이터를 표현(인코딩)할 수 있는
Categorical형이라고 하는 특수한 데이터형이 존재한다.
데이터프레임 제작
fruit 컬럼을 카테고리형 시리즈로 제작
fruit 컬럼은 파이썬 문자열 객체의 배열로 쉽게 범주형으로 바꿀 수 있다.
Categorical 인스턴스
Categorical 객체는 categories와 codes 속성을 가진다.
만약 apple, orange, banana였으면 codes는 2 값도 가졌을 것이다.
컬럼을 범주형으로 변경
변경 완료된 값을 대입해서 DataFrame의 컬럼을 범주형으로 변경할 수 있다.
Categorical 메서드
범주형 데이터를 담고 있는 Series는
특화된 문자열 메서드인 Series.str과 유사한
특수 메서드인 cat 속성이 있다.
이를 통해 categories와 codes나 categorical 메서드 등에 쉽게 접근할 수 있다.
시리즈 제작
시리즈에 바로 categories나 codes를 사용하면 에러가 발생한다.
이때 이용하는 것이 cat 속성이다.
cat 속성 이용
set_categories
카테고리를 변경하거나 추가, 삭제하는 작업을 진행할 때 이용한다.
값은 e가 없지만 카테고리에는 e가 추가되었다.
기존 시리즈와 비교
remove_unused_categories()
데이터 분석/처리 과정에서 큰 DataFrame이나 Series를 정제하게 되면
실제로 데이터에는 없는 카테고리가 남아있는 경우가 있다.
그런 카테고리를 삭제할 때 이용한다.
실제 데이터는 a, b만 있으나
카테고리는 c, d를 포함하고 있다.
관측되지 않는 카테고리 제거
다른 categorical 메서드
메서드 | 설명 |
add_categories | 기존 카테고리 끝에 새로운 카테고리 추가 |
as_ordered | 카테고리가 순서를 가지도록 함 |
as_unordered | 카테고리가 순서를 가지지 않도록 함 |
remove_categories | 카테고리를 제거, 해당 카테고리에 속한 값들은 null로 설정됨 |
remove_unused_categories | 데이터에서 관측되지 않는 카테고리 삭제 |
rename_categories | 카테고리 이름을 지정한 이름으로 변경 |
reorder_categories | rename_categories와 유사하나, 새로운 카테고리가 순서를 가짐 |
set_categories | 카테고리를 지정한 새로운 카테고리로 변경 카테고리 추가 혹은 삭제 가능 |
반응형
'Pandas > 기초' 카테고리의 다른 글
판다스 - 데이터프레임 랜덤 추출 : DataFrame.sample (0) | 2020.09.04 |
---|---|
판다스 - 파일 읽어오기 : from os.path import join (0) | 2020.08.24 |
판다스 - 백분위수 찾기 : describe(percentiles), quantile (0) | 2020.08.09 |
판다스 - value_counts(normalize=True) (0) | 2020.08.07 |
판다스 - to_datetime : format, dt (0) | 2020.07.23 |