종 모양, 가장 많이 쓰임
예: 키, 몸무게, 시험 점수
대부분이 평균 근처에 있고, 좌우 대칭!
성공/실패 같은 두 가지 결과만 있는 실험을 여러 번 할 때
예: 동전 10번 던졌을 때 앞면이 몇 번 나올까?
어떤 일이 얼마나 자주 일어나는지를 다룰 때
예: 하루에 몇 번 지진이 날까, 1분에 몇 명이 버스를 탈까?
적은 횟수가 많고, 많은 횟수는 거의 없음
어떤 일이 발생하기까지 걸리는 시간을 다룰 때
예: 전기가 다시 들어올 때까지 걸리는 시간
처음엔 확률이 높다가, 점점 줄어듦
모든 값이 똑같이 나올 확률이 있을 때
예: 주사위 (1~6이 똑같은 확률)
통계 분석할 때 자주 쓰이지만, 고급 통계에서 사용하는 분포들
(관측값 - 기대값)²
기대값을 여러 번 계산한 값의 분포 즉, 기대와 실제의 차이를 반복해서 측정한 결과의 분포
0 이상, 한쪽으로 쏠림, 자유도에 따라 모양 달라짐
기대값 vs 실제값의 차이를 판단할 때, 범주형 데이터 검정 할때 사용
카이제곱 통계량 > 기대와 실제의 차이를 수치로 계산한 값
카이제곱 분포 > 그 통계량을 여러 번 계산해서 나온 값들의 분포
| 구분 | 정규분포 (Z) | t-분포 |
|---|---|---|
| 언제 써? | 모집단 분산(σ²)을 알고 있을 때 | 모르고, 표본 분산으로 대신할 때 |
| 모집단 분포 가정 | 정규분포 또는 표본이 매우 클 때 | 정규분포일수록 좋음, 표본 작아도 OK |
| 쓰는 이유 | 정확한 확률 계산 | 추정의 불확실성 보정 |
| 꼬리 두께 | 얇다 | 두껍다 (불확실하니까 더 퍼져 있음) |
| 기능 | 예시 함수 | 설명 |
|---|---|---|
| 확률분포 | stats.norm, stats.binom, stats.poisson | 정규분포, 이항분포, 포아송분포 |
| 기술통계 | stats.mean, stats.variance, stats.mode | 평균, 분산, 최빈값 구하기 |
| 통계 검정 | stats.ttest_ind, stats.chi2_contingency | 두 집단 평균 차이 검정, 독립성 검정 |
| 상관 분석 | stats.pearsonr, stats.spearmanr | 상관계수 구하고 유의성 검정 |
| 신뢰구간 | 직접 계산하거나 stats.t.interval | 평균의 신뢰구간 구하기 등 가능 |
| 생성 함수 | 생성되는 값 타입 | 예시 |
|---|---|---|
np.random.rand() | 실수 (0~1) | np.random.rand(3) → [0.23, 0.91, 0.41] |
np.random.randn() | 정규분포 실수 | np.random.randn(2) → [0.38, -1.21] |
np.random.randint() | 정수 | np.random.randint(1, 10, size=4) → [2, 8, 5, 3] |
np.random.normal() | 정규분포 실수 | np.random.normal(100, 15, size=3) → [92.4, 107.2, 118.9] |
np.random.choice() | 범주형 데이터도 가능 | np.random.choice(['A', 'B', 'C'], 2) → ['C', 'A'] |
np.random.uniform() | 균등분포 실수 | np.random.uniform(0, 5, size=3) → [2.4, 1.7, 4.9] |
np.random.binomial() | 이산형(0/1) 값 | np.random.binomial(1, 0.7, size=5) → [1, 1, 1, 0, 1] |