🎰 통계학 실습 - python/신뢰구간

🎲 신뢰구간

nyamin9 2023. 6. 27. 14:13

모바일은 화면을 돌려 가로화면으로 보시는 게 읽으시기 편할 수 있습니다. 돌려서 보시는 걸 추천드릴게요!! 

 

 

 


 

🎲 01. 모평균에 대한 신뢰구간

 

 

☑️ 데이터 분포 확인 : seaborn.distplot( )

# 히스토그램 및 kde plot 출력

import pandas as pd
csi = pd.read_csv('D://data//Csi.csv')

import seaborn as sns
import matplotlib.pyplot as plt
sns.distplot(csi.Index)
plt.show()

 

 

 

 ☑️ 모평균에 대한 신뢰구간 계산 : DescrStatsW( )

# DescrStatsW() : 변수에 대한 기술통계량, 검정통계량, 모평균에 대한 신뢰구간 저장 리스트 생상
# tconfint_mean() : 모분산이 알려지지 않은 경우, 모평균에 대한 신뢰구간 생성
# zconfint_mean() : 모분산이 알려진 경우, 모평균에 대한 신뢰구간 생성

import statsmodels.stats.api as sms

print(sms.DescrStatsW(csi.Index).mean) # 표본평균 -> 점추정치
print(sms.DescrStatsW(csi.Index, ddof = 1).std) # 표본표준편차
print(sms.DescrStatsW(csi.Index).tconfint_mean()) # 모평균의 95% 신뢰구간, 모평균은 모름을 가정
표본평균 >> 72.32

표본표준편차 >> 11.6

95% CI >> (67.53175533702299, 77.108244662977)

 

 


 

🎲 02. 모비율에 대한 신뢰구간

 

 

• 상황 :  어떤 선거구의 유권자 중에서 400명을 임의로 추출하여 입후보자 A에 대한 지지여부를 알아본 결과 250명이 지지하는 것으로 나타났다. 지지율 𝒑에 대한 95% 신뢰구간을 구하시오.

 

☑️ 모비율에 대한 신뢰구간 계산 : proportion_confint( )

# proportion_confint(count, nobs, alpha=0.05, method= )
# norm.interval(신뢰수준, 평균, 표준오차) : 신뢰수준, 평균, 표준편차(오차)를 지정

from statsmodels.stats.proportion import proportion_confint
from scipy.stats import norm

print('표본비율 : ', 250 / 400)
print('베타신뢰구간 : ', proportion_confint(250, 400, alpha = 0.05, method = 'beta'))
print('정규근사 신뢰구간 : ', proportion_confint(250, 400, alpha = 0.05, method = 'normal'))
print('정규근사 신뢰구간 : ', norm.interval(0.95, 0.625, np.sqrt(0.625 * (1-0.625) / 400)))
>> 표본비율 :  0.625

>> 베타신뢰구간 :  (0.5755217886614248, 0.67261376127048)

>> 정규근사 신뢰구간 :  (0.5775568258044377, 0.6724431741955623)

>> 정규근사 신뢰구간 :  (0.5775568258044378, 0.6724431741955622)

 

 


 

🎲 03. 모분산에 대한 신뢰구간

 

 

☑️ 모분산에 대한 신뢰구간 계산 : bayes_mvs( ) - 모평균, 모분산, 모표준편차의 신뢰구간 출력

from scipy.stats import bayes_mvs

mean_ci, var_ci, std_ci = bayes_mvs(csi.Index, alpha = 0.95)
print(mean_ci)
print()

print(var_ci)
print()

print(std_ci)
print()
# 모평균의 95% CI
Mean(statistic=72.32, minmax=(67.53175533702299, 77.108244662977))

# 모분산의 95% CI
Variance(statistic=146.79272727272726, minmax=(82.04028250979714, 260.41455376108695))

# 모표준편차의 95% CI
Std_dev(statistic=11.978951328828686, minmax=(9.05760909455675, 16.137365143079798))