기술 통계: 변산성 측정치
위치 측정치
분위수 (Quantile)
- 데이터 크기 순 정렬 시, 전체 데이터를 특정 비율로 나누는 위치의 값.
- 예: 중간값 = 0.5 분위수 (50% 지점).
- 사분위수, 백분위수 등이 있음.
사분위수 (Quartile)
- 데이터를 4등분하는 위치 값.
- 제1사분위수 (Q1): 하위 25% 지점 (0.25 분위수).
- 제2사분위수 (Q2): 50% 지점 (0.5 분위수) = 중간값.
- 제3사분위수 (Q3): 상위 25% 지점 (0.75 분위수).
- (영어 철자 주의: quantile vs. quartile)
백분위수 (Percentile)
-
데이터에서 순위를 **백분율(%)**로 표현.
-
최소값 = 0 퍼센타일.
-
제1사분위수 (Q1) = 25 퍼센타일.
-
제2사분위수 (Q2) = 중간값 = 50 퍼센타일.
-
제3사분위수 (Q3) = 75 퍼센타일.
-
최대값 = 100 퍼센타일.
-
최소값:
df.price.min()
-
최대값:
df.price.max()
-
25 퍼센타일 (제1사분위수):
df.price.quantile(0.25) # 인자로 비율(0~1) 입력
변산성 측정치
범위 (Range)
- 최대값 - 최소값.
- 단점: 극단값 있으면 매우 커짐. 데이터 중간 부분 퍼짐 정도 반영 못 함.
- 10, 20, 30, 40, 50 → 범위 50 - 10 = 40
- 10, 20, 30, 40, 500 → 범위 500 - 10 = 490
사분위간 범위 (InterQuartile Range, IQR)
- 제3사분위수 (Q3) - 제1사분위수 (Q1).
- 데이터의 **중앙 50%**가 퍼져 있는 범위.
- 장점: 최소/최대값 근처 극단값 영향 적음.
상자 수염 그림 (Box-Whisker Plot / Box Plot)
- 데이터 분포 시각화 방법. 5가지 요약 수치 표현.
- 상자(Box): 제1사분위수(Q1) ~ 제3사분위수(Q3) 범위. IQR 나타냄.
- 상자 내 굵은 선: 중간값(Median, Q2).
- 수염(Whisker): 상자 밖 선. 보통 최소값, 최대값까지 뻗음.
- 수염 최대 길이: 일반적으로 IQR의 1.5배까지. 이 범위를 벗어나는 값은 **이상치(outlier)**로 간주, 점으로 표시.
(이미지 출처: 위키미디어 커먼즈)
import seaborn as sns # 시각화 라이브러리 seaborn 임포트
# price 변수 하나에 대한 box plot
sns.boxplot(x='price', data=df)
# model 그룹별 price box plot 비교
sns.boxplot(x='price', y='model', data=df)
편차 (Deviation)
- 개별 값 - 평균.
- 예: 데이터 30, 40, 50 (평균 40)
- 편차: -10, 0, +10
분산 (Variance)
- 편차 제곱의 평균.
- 데이터가 평균으로부터 얼마나 퍼져 있는지 나타냄.
- 특징:
- 직관적 이해는 어려우나, 수학적으로 중요 성질 많음.
- 편차 제곱으로 계산되어 원래 데이터 단위와 달라짐. 크기도 커짐.
- 분산에 제곱근 취한 표준편차를 더 많이 사용.
표준편차 (Standard Deviation)
-
분산의 양의 제곱근 (√분산).
-
데이터가 평균 중심 얼마나 퍼져 있는지 나타냄.
-
특징:
- 분산보다 직관적 해석 용이 (원래 데이터 단위와 동일).
-
분산:
df.price.var()
-
표준편차:
df.price.std()
-
기술통계 한 번에 구하기: (개수, 평균, 표준편차, 최소값, 사분위수, 최대값 등)
df.price.describe()