[KT] AIVLE SCHOOL 5일차
범주형 변수 분석
- 범주형 변수는 정해진 몇 개의 값이 여럿 모여있는 변수
- 범주형 변수는 범주값 각각이 몇 개씩 포함되어 있는지, 전체에서 각각이 차지하는 비율은 어떤지를 확인해야 함
- 즉 범주형 변수안에 포함된 범줏값 각각의 빈도수와 비율이 분석 대상
수치화
- 범주형 변수는 범주별 빈도수와 비율을 기초 통계량을 통해 확인함
- Pandas의 value_counts() 메소드는 범주형 변수에 포함된 범줏값 각각의 개수를 카운트 해 줌
- normalize=True 옵션을 지정해 개수가 아닌 비율을 확인할 수 있음
- 범줏값만 확인할 때는 unique() 메서드를 사용
시각화
- 범주형 변수는 Bar Plot과 Pie Chart를 사용해 시각화 할 수 있음
- 기초 통계량보다 좀 더 쉽게 데이터를 이해할 수 있음
- Bar Plot
- Bar Plot으로 범줏값의 크기를 비교
- 범주 이름과 값이 필요하므로 집계 작업이 선행되어야 함.
- Pandas의 value_counts()를 사용하여 집계
- 집계 결과의 index: 범줏값 이름
- 집계 결과의 values: 값
- 집계 결과를 Matplotlib의 bar() 함수로 시각화, x축이 범줏값 이름, y축(height)이 비교할 값
- temp = titanic['Pclass'].value_counts()
- plt.bar(x=temp.index, height=temp.values)
- barh() 함수로 가로로 나타낼 수도 있음. y축이 범줏값 이름, x축(width)이 비교할 값
- plt.barh(y=temp.index, width=temp.values)
- Seaborn의 countplot() 함수를 사용하면 집계 과정 없이도 Bar Plot를 그릴 수 있음
- 자동 집계되어 범줏값의 크기가 비교됨
- sns.countplot(x='Pclass', data=titanic)
- Pie Chart
- 범주별 값의 빈도수가 아닌 비율을 비교할 때는 Pie Chart를 사용함
- Pie Chart 역시 집계를 먼저 해야함
- temp = titanic['Pclass'].value_counts()
- plt.pie(x=temp.values, labels=temp.index, autopct='%.2f%%')
- 여러가지 옵션
- startangle=90 : 90도 부터 시작
- counterclock=False : 시계 방향으로
- explode=[0.05, 0.05, 0.05] : 중심으로부터 1, 2, 3을 얼마만큼 띄울지
- shadow=True: 그림자 추가
'Data Science > 데이터 분석' 카테고리의 다른 글
이변량 분석 (3) - 범주형 -> 범주형 (0) | 2025.04.02 |
---|---|
이변량 분석 (2) - 범주형 -> 수치형 (0) | 2025.04.02 |
가설과 가설 검정 (0) | 2025.04.01 |
이변량 분석 (1) - 수치형 -> 수치형 (0) | 2025.04.01 |
단변량 분석 (1) - 수치형 (0) | 2025.04.01 |