Ming's Life

통계학(통계분표) 본문

통계학

통계학(통계분표)

chamiii 2025. 6. 25. 19:34

1. 오늘 학습 키워드

  • 통계학 기초

 


 

2. 오늘 학습 한 내용을 나만의 언어로 정리하기

 

1. 모집단과 표본

  • 모집단: 관심 있는 전체 집단 (예: 한 국가의 모든 성인)
  • 표본: 모집단에서 뽑은 일부 (예: 그 중 일부 성인)
  • 표본을 사용하는 이유:
    • 시간/비용 절감
    • 모든 데이터를 얻기 어려움
    • 대표성 있는 표본은 전체를 잘 반영
# 모집단 vs 표본 시각화 예시

# 모집단 생성 (예: 국가의 모든 성인의 키 데이터)
population = np.random.normal(170, 10, 1000)
# 표본 추출
sample = np.random.choice(population, 100)

plt.hist(population, bins=50, alpha=0.5, label='population', color='blue')
plt.hist(sample, bins=50, alpha=0.5, label='sample', color='red')
plt.legend()
plt.title('population and sample distribution')
plt.show()

 

2. 표본오차 & 신뢰구간

  • 표본오차: 표본 통계량과 모집단 참값의 차이
  • 신뢰구간: 모집단 평균이 포함될 것으로 기대되는 구간
    예: 표본 평균 ± 1.96 × 표준오차

표본오차, 신뢰구간 그림으로 확인하기

  • 모집단과 표본 분포 (왼쪽 그림)
    • 붉은색 점선은 모집단의 평균
    • 파란색 점선은 표본의 평균
    • 모집단의 분포는 넓고, 표본 평균들의 분포는 좁아진다.
    • 표본 크기가 커질수록 표본 평균이 모집단 평균에 더 가까워지는 경향을 보여준다.
  • 신뢰구간 시각화 (오른쪽 그림)
    • 오른쪽 그림은 표본의 분포와 95% 신뢰구간을 보여준다.
    • 파란색 점선은 표본의 평균을 나타내고, 녹색 점선은 95% 신뢰구간의 상한과 하한을 나타낸다.
    • 이 신뢰구간은 모집단의 평균을 포함할 것으로 예상되는 범위
import scipy.stats as stats

# 표본 평균과 표본 표준편차 계산
sample_mean = np.mean(sample)
sample_std = np.std(sample)

# 95% 신뢰구간 계산
conf_interval = stats.t.interval(0.95, len(sample)-1, loc=sample_mean, scale=sample_std/np.sqrt(len(sample)))

print(f"표본 평균: {sample_mean}")
print(f"95% 신뢰구간: {conf_interval}")

 

 

3. 대표적인 확률분포

✅ 정규분포 (Normal)

  • 종 모양, 평균 기준 좌우 대칭
  • 예: 키, 시험점수

출처 : 위키백과

# 정규분포 생성
normal_dist = np.random.normal(170, 10, 1000)

# 히스토그램으로 시각화
plt.hist(normal_dist, bins=30, density=True, alpha=0.6, color='g')

# 정규분포 곡선 추가
xmin, xmax = plt.xlim()
x = np.linspace(xmin, xmax, 100)
p = stats.norm.pdf(x, 170, 10)
plt.plot(x, p, 'k', linewidth=2)
plt.title('normal distribution histogram')
plt.show()

 

✅ 긴 꼬리 분포 (Long Tail)

  • 한쪽에 치우친 비대칭
  • 예: 소득, 웹사이트 트래픽

출처 : https://www.nngroup.com/articles/long-tail/

# 긴 꼬리 분포 생성 (예: 소득 데이터)
long_tail = np.random.exponential(1, 1000)

# 히스토그램으로 시각화
plt.hist(long_tail, bins=30, density=True, alpha=0.6, color='b')
plt.title('long tail distribution histogram')
plt.show()

 

✅ t-분포 (Student's t)

  • 표본 수가 적을 때 정규분포 대신 사용
  • 꼬리가 두꺼움

출처 : 위키백과

# 스튜던트 t 분포 생성
t_dist = np.random.standard_t(df=10, size=1000)

# 히스토그램으로 시각화
plt.hist(t_dist, bins=30, density=True, alpha=0.6, color='r')

# 스튜던트 t 분포 곡선 추가
x = np.linspace(-4, 4, 100)
p = stats.t.pdf(x, df=10)
plt.plot(x, p, 'k', linewidth=2)
plt.title('student t distribution histogram')
plt.show()

 

✅ 카이제곱분포 (Chi-square)

  • 범주형 데이터 분석에 사용
  • 독립성 검정, 적합도 검정에 유용

출처 : 위키백과

# 카이제곱분포 생성
chi2_dist = np.random.chisquare(df=2, size=1000)

# 히스토그램으로 시각화
plt.hist(chi2_dist, bins=30, density=True, alpha=0.6, color='m')

# 카이제곱분포 곡선 추가
x = np.linspace(0, 10, 100)
p = stats.chi2.pdf(x, df=2)
plt.plot(x, p, 'k', linewidth=2)
plt.title('카이제곱 분포 히스토그램')
plt.show()

 

✅ 이항분포 (Binomial)

  • 두 가지 결과(성공/실패) 반복 실험
  • 예: 동전 던지기, 불량률 측정

# 이항분포 생성 (예: 동전 던지기 10번 중 앞면이 나오는 횟수)
binom_dist = np.random.binomial(n=10, p=0.5, size=1000)

# 히스토그램으로 시각화
plt.hist(binom_dist, bins=10, density=True, alpha=0.6, color='y')
plt.title('이항 분포 히스토그램')
plt.show()

 

 

✅ 푸아송분포 (Poisson)

  • 단위 시간/공간 내 사건 발생 수
  • 예: 콜센터 전화, 교통사고 건수

import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import poisson

# 푸아송 분포 파라미터 설정
lambda_value = 4  # 평균 발생률
x = np.arange(0, 15)  # 사건 발생 횟수 범위

# 푸아송 분포 확률 질량 함수 계산
poisson_pmf = poisson.pmf(x, lambda_value)

# 그래프 그리기
plt.figure(figsize=(10, 6))
plt.bar(x, poisson_pmf, alpha=0.6, color='b', label=f'Poisson PMF (lambda={lambda_value})')
plt.xlabel('Number of Events')
plt.ylabel('Probability')
plt.title('Poisson Distribution')
plt.legend()
plt.grid(True)
plt.show()

4. 언제 분포를 쓸까 ?

상황                                                                적합한 분포

데이터 많음 정규분포
데이터 적음 t-분포
성공/실패 반복 이항분포
시간당 사건 수 푸아송분포
범주형 독립성 검정 카이제곱분포
인기 상위 소수가 큰 영향 긴 꼬리 분포

 

 

지금까지의 배운 분포는 일부에 불과하다 ..

출처 : https://www.math.wm.edu/~leemis/chart/UDR/UDR.html

5. 정리

  • 통계분포는 데이터의 성격에 따라 다르게 사용됨
  • 핵심은 "데이터의 구조를 이해하고, 그에 맞는 분포를 적용하는 것!"

 

 

3. 학습하며 겪었던 문제점 & 에러 

 

이해하는데 많은 어려움이 있다 .. 복습을 많이 해야겠다.

 

4. 내일 학습 할 것은 무엇인지 

 

통계학 공부

 

 

'통계학' 카테고리의 다른 글

통계학(가설검정)  (0) 2025.07.10
통계학(A/B 검정)  (1) 2025.07.10
통계학(1주차 연습문제)  (0) 2025.06.24
통계학(통계 분석 방법)  (0) 2025.06.24
통계학(기술통계 / 추론통계)  (0) 2025.06.24