지난 시간에 공부한 숫자형 변수 뿐 아니라 카테고리를 가지고 있는 질적 데이터인 범주형 변수가 존재합니다. 범주형의 기초 통계량은 범주 별 빈도수와 범주 별 비율을 통해 구할 수 있습니다.
범주 별 빈도수는
시리즈.value_counts()
를 통해 구할 수 있습니다.
범주의 개수와 상관없이 범주 별 개수를 count해주는 메서드입니다.

위와 같이 각 범주로 나누어 count값을 반환합니다.
범주별 비율은
.value_counts(normalize = True)
위와 같은 식으로 구할 수 있습니다.
이때 normalize뜻을 비율이라고 생각하면 쉽게 떠올릴 수 있습니다.

범주 별로 비율을 구해서 반환하는 것을 확인할 수 있습니다.
범주형 변수 시각화하기
막대그래프
범주형 변수는 막대그래프 (Bar Plot)으로 표현하면 한 눈에 확인하기 좋습니다.
seaborn의 countplot을 이용하면 알아서 범주별 빈도수가 계산되고, bar plot으로 그려집니다.
plt.bar()을 사용하게 되면 먼저 집계한 후 결과를 가지고 그래프를 그려야하므로 countplot을 사용하는게 편리하겠죠?
sns.countplot(x = 'Pclass', data = titanic)
plt.grid()
plt.show()

박스 플롯을 보면 히스토그램이 생각날텐데요
히스토그램과 박스플롯은 비슷하게 생겼지만 기능은 달라요
| 구분 | 히스토그램 | 박스플롯 |
| 공통점 | y축(빈도수, 개수) 동일 | y축 기준으로 데이터의 분포 표현 |
| 차이점 | x축이 연속형 변수라 그래프가 붙어있음 | x축이 범주형 변수라 항목이 떨어져있음 |
| 순서 변경 | 연속데이터라 불가능 | 범주형 데이터라 가능 |
따라서 히스토그램은 숫자형 변수의 분포를 보고 싶을 때,
박스플롯은 여러 그룹 간의 분포 비교를 수행할 때 사용하면 됩니다 !
파이차트
범주별 비율을 비교할 때는 파이차트를 활용할 수 있습니다.
파이차트를 그리기 전에 데이터를 집계(value_counts) 해야 합니다.
plt.pie( 값, labels=범주이름, autopct = ‘%.2f%%’)
여기서
autopct='%.2f%%' 는 그래프에 표시할 비율 값이 소수점 둘째 자리까지의 퍼센트 값이라는 의미예요.
즉, 각 조각이 전체 중 몇 %를 차지하는지 깔끔하게 볼 수 있죠.
그래프가 시작되는 각도나, 그려지는 방향
plt.pie(temp.values, labels=temp.index, autopct='%.2f%%', startangle=90, counterclock=False) plt.show()
- startangle=90 : 그래프를 90도 위치에서 시작
- counterclock=False : 시계 방향으로 그리기
다음과 같이 그래프가 시작되는 각도나, 그려지는 방향을 설정할 수 있습니다.
plt.pie(temp.values, labels=temp.index, autopct='%.2f%%', startangle=90, counterclock=False, explode=[0.05, 0.05, 0.05], shadow=True) plt.show()
- explode=[0.05, 0.05, 0.05] : 각 조각을 중심에서 살짝 띄우기
- shadow=True : 그림자 효과 추가
같은 방법으로 조각들을 살짝 띄워주거나, 그림자를 추가할 수도 있습니다.
마무리하며...
추석과 시험기간이 있었던 10월에는 잠시 휴회기간을 가졌었는데요.
그 시간동안 지금까지 제가 작성했던 블로그를 보며 내용을 되새길 수 있었습니다!
이렇게 도움이 되는 걸 느낀만큼 앞으로도 열심히 작성하며 복습을 진행하고,
다음에 봐도 쉽게 이해할 수 있게 꾸준히 작성해보려구 합니다!
11월에는 더 열심히 공부해서 성장하는 사람이 되도록 하겠습니당
화이팅 !
'BDA' 카테고리의 다른 글
| [BDA] 7주차 이변량 분석2 범주형 vs 범주형 (0) | 2025.12.01 |
|---|---|
| [BDA] 6주차 수치형 vs 수치형 (0) | 2025.11.23 |
| [BDA] 4주차 단변량 분석 (1) | 2025.10.13 |
| [BDA] 3주차 데이터 시각화 (0) | 2025.10.02 |
| [BDA] 2주차 파이썬 기초, 판다스 복습 (0) | 2025.09.29 |