★ 시작에 앞서 ★
해당 내용은 '<현대통계학-제6판>, 다산출판사, 2024' 에 나와있는 챕터별 연습문제를 교재를 응용하여 풀이하고, 수학적인 문제에 대한 답변을 파이썬으로 구현해보기 위해 작성하는 글이다.
해당 답변을 구현하는 방식은 답안지 없이 필자가 스스로 구현하는 것이므로, 정확한 (혹은 가장 효과적인) 답변이 아닐 수 있다. 이 글의 목적은 통계학 공부와 파이썬 프로그래밍 언어 공부를 동시에 하고자 함이며, 통계학을 공부하고 싶으신 분들은 해당 교재를 구매하는 것을 추천한다.
또한, 연습문제 번호 및 문제 내용은 필자가 임의대로 작성하였으며, 교재와는 다를 수 있다.
잘못된 부분이 있다면 언제든 피드백 부탁 드립니다! 감사합니다
이전 내용
챕터8 주요 개념-2
- 분산의 표집분포: 어떤 모집단이 𝜎^2(제곱) 의 분산을 가질 때, 이 모집단으로부터 크기가 동일하게 선택가능한 모든 표본을 뽑아서 각각의 분산을 계산했을 때, 표본분산 S^2(제곱)들은 일정한 분포를 이루게 되는 것.
어떤 모집단이 2, 4, 6, 8의 관찰값으로 구성되어 있다면, 이 모집단의 평균과 분산은 모두 5다.
# 표본의 분산
import numpy as np
x = [2, 4, 6, 8]
mean = np.mean(x)
var = np.var(x)
print('평균:', mean)
print('분산:', var)
n=2인 선택가능한 모든 표본과 그 표본이 뽑힐 확률과 분산을 계산하면 아래와 같다.
표본 | 뽑힐 확률 | 분산 | 표본 | 뽑힐 확률 | 분산 |
2, 2 | 1/16 | 0 | 6, 2 | 1/16 | 8 |
2, 4 | 1/16 | 2 | 6, 4 | 1/16 | 2 |
2, 6 | 1/16 | 8 | 6, 6 | 1/16 | 0 |
2, 8 | 1/16 | 18 | 6, 8 | 1/16 | 2 |
4, 2 | 1/16 | 2 | 8, 2 | 1/16 | 18 |
4, 4 | 1/16 | 0 | 8, 4 | 1/16 | 8 |
4, 6 | 1/16 | 2 | 8, 6 | 1/16 | 2 |
4, 8 | 1/16 | 8 | 8, 8 | 1/16 | 0 |
모든 표본으로부터 구한 분산의 확률분포는 아래와 같다.
분산 | 확률 |
0 | 4/16 |
2 | 6/16 |
8 | 4/16 |
18 | 2/16 |
분산의 표집분포는 언제나 오른쪽 꼬리가 긴 모양을 갖지만, 표본의 크기 n이 커질수록 정규분포에 가까운 모양을 갖게 된다.
표본분산의 기댓값이 모분산과 일치한다는 특성은 모집단의 분포에 상관없이 성립한다.
모집단의 분포가 정규분포인 경우에는, S^2 의 표준분포의 평균이 모분산인 𝜎^2과 같으며, 분산의 표집분포 모양은 n의 크기에 따라 X^2-분포(카이제곱분포)를 이룬다.
- 카이제곱분포: 분산이 𝜎^2를 갖는 정규분포를 이루는 모집단으로부터 표본의 크기가 n인 선택가능한 모든 표본을 뽑을 때, 각 표본의 분산을 S^2 라고 하면 카이제곱분포는 아래와 같다.
카이제곱분포는 비대칭의 모양을 이루고 오른쪽으로 긴 꼬리를 가지며, 항상 양수값만을 갖는 특징을 가지고 있다.
카이 제곱 분포(chi-squared distribution, χ2 분포)는 k개의 서로 독립적인 표준 정규 확률 변수를 각각 제곱한 다음 합해서 얻어지는 분포이다.
카이 제곱 분포를 사용하는 때는 상관관계나 인과관계를 판별하고자 하는 원인의 독립변수가 “완벽하게 서로 다른 질적 자료”일 때 활용한다. 또한, 카이제곱분포의 모양은 자유도에 따라 달라지는데, 이 자유도는 표본의 크기 n에서 1을 뺀 것과 같다.
자유도가 커질수록 카이제곱분포는 정규분포에 가깝게 된다.
- 비율의 표집분포(sampling distribution of propotion): 동일한 모집단에서 선택가능한 모든 표본을 뽑아 구한 비율들의 분포.
이항분포에서 하나의 사건을 성공이라고 하면, 전체 모집단에서 성공의 비율( π )은 아래와 같다.
위와 같이 이항분포를 이루는 모집단에서 크기가 n인 표본을 뽑을 때, 그 표본에서의 성공비율 p는 아래와 같다.
이 성공의 횟수를 확률변수 X라고 하고, 각 확률변수의 성공비율 p와 확률변수가 나타날 확률을 모두 표시한 것이 비율의 표집분포가 된다.
[성공횟수의 기댓값과 분산]
[비율의 표집분포의 기댓값과 분산]
- 이항분포의 정규근사법: 이항분포의 모양은 성공비율(π)이 0.5일 때에는 정규분포에 가까운 분포를 이루며, 성공비율이 0.5에서 멀어지면 정규분포 모양과 커다란 차이를 보인다. 그러나 표본크기 n이 커질수록 표집분포는 정규분포 모양에 접근하게 되며, 이는 중심극한정리가 이항분포에도 적용됨을 뜻한다.
이렇게 이항분포에서 n을 크게 하여 중심극한정리를 적용함으로써 그 분포를 정규분포로 간주하여 정규분포표를 사용하는 방법으로 이항분포의 확률을 구하는 방법을 정규근사법(normal approximation to binomial distribution) 이라 한다.
이항분포가 정규분포를 이룬다면 표준정규분포인 Z-분포를 이용하여 확률을 계산할 수 있다.
[성공횟수 X에 해당되는 Z값]
[표본비율 p에 해당되는 Z값]
★ 이항분포는 이산확률분포, 정규분포는 연속확률분포이므로 이산확률분포를 연속확률분포에 적용할 수 있도록 적절히 조정하여야 한다.
표본의 크기 n이 작을 때에는 연속성을 위한 조정이 필수적이나, 표본의 크기가 커지면 연속성을 위한 조정 없이도 정규근사법을 이용할 수 있다. 이는 p의 표집분포가 n이 커질수록 중심극한정리에 따라 정규분포의 모양을 갖기 때문이다.
또한, 성공비율(π) 이 0.5일 때에는 n이 작아도 이항분포는 정규분포와 유사한 모양을 갖게 되므로 π과 n의 두 요인을 복합적으로 고려하여야 한다.
챕터8 예제3 및 파이썬 풀이
Q. 어느 대학교 기숙사에서 생활하는 학생 1,000명 중에 여학생이 400명이다. 10명씩을 뽑아서 표본마다 여학생을 비율을 조사한다. 가능한 모든 표본으로부터 뽑힌 여학생의 비율은 어떤 분포를 이룰 것인가?
# 여학생 비율 분포
total_n = 1000 #모집단(전체 학생) 수
n = 400 # 여학생의 수
sample_n = 10 # 표본 수
e_p = n / total_n # 표집분포의 기댓값
var = (e_p * (1-e_p)) / sample_n # 표집분포의 분산
std = var ** 0.5 # 표집분포의 표준편차
print('비율의 표집분포의 기댓값:', e_p)
print('비율의 표집분포의 분산:', var)
print(f'비율의 표집분포의 표준편차: {std:.3f}')
챕터8 예제4 및 파이썬 풀이
Q. H제과에서는 청량음료 제조에 품질관리를 철저히 하고 있는데 지금까지의 경험으로는 제품 중에 5%가 용량미달이라고 한다. 생산제품 100개를 표본으로 뽑았을 때 이 중 10% 이상이 용량미달로 밝혀질 확률은?
# H제과 제품 용량 미달 확률
from scipy import stats
n = 100 # 표본의 수
s_p = 0.05 # 성공비율
g_p = 0.1 # 용량미달로 밝혀질 확률(10%)
if n * s_p >= 0.5:
p = (s_p * (1 - s_p) / n)** 0.5
print(f'표본비율: {p:.3}')
# p에 해당하는 z값 찾기
z = (g_p - s_p) / p
print(f'표본비율 p에 해당하는 Z값: {z:.2f}')
# 용량미달이 10% 이상일 확률 계산
probability = 1 - stats.norm.cdf(z)
print(f'10% 이상이 용량미달로 밝혀질 확률: {probability:.3f}')
else:
print("표본 크기가 너무 작아서 정규 근사치에 부적합.")
다음 내용
'[파이썬 Projects] > <파이썬 - 수학 | 통계학>' 카테고리의 다른 글
[개발자를 위한 수학] 선형회귀 - 1 (8) | 2024.10.16 |
---|---|
[파이썬+통계학] 현대통계학 연습문제 파이썬 구현(ch.8)-3 (4) | 2024.10.13 |
[파이썬+통계학] 현대통계학 연습문제 파이썬 구현(ch.8)-1 (2) | 2024.10.11 |
[파이썬+통계학] 현대통계학 연습문제 파이썬 구현(ch.7)-2 (3) | 2024.10.11 |
[파이썬+통계학] 현대통계학 연습문제 파이썬 구현(ch.7)-1 (0) | 2024.10.11 |