범주형 데이터 분석
1. 적합도 검정(goodness of fit test)
- 본격적인 검정을 들어가기 전에 한다.
- 관측이나 실험을 통해 얻어진 표본 데이터의 분포가 특정 형태의 분포와 일치하는지 알아보고자 하는 검정 방법
- 범주형 데이터의 관측치와 기댓값과의 차이를 근거로 검정
- 범주의 총 개수 à k
- 범주 i의 기대도수(expected frequency) à E_i
- 범주 i의 관측도수(observed frequency) à O_i

귀무가설 H0 : “관측 데이터는 특정 분포를 따른다”
귀무가설 H0 : 범주 i의 발생확률 pi 설정

k = 범주의 개수
m = 귀무가설에서 설정한 분포에서 추정한 모수의 개수
실습코드
# 카이제곱 검정 (적합도)
print(spt.chisquare([16, 18, 16, 14, 12, 12]))
print(spt.chisquare([16, 18, 16, 14, 12, 12], f_exp=[16, 16, 16, 16, 16, 8]))
print(spt.chisquare([16, 18, 16, 14, 12, 12], ddof=[0,1,2]))
obs=np.array([31,26,22,18,13,10])
print(spt.chisquare(obs))
2. 교차분석(goodness of fit test)
- 교차분석 : 두 개의 범주형 변수 간의 연관성을 분석하는 기법
- 교차표(cross table), 이차원 분할표(two-way contingency table)
실습코드
# 교차분석
ss=robjs.r['exa12_5']
print(ss)
ch2,pval,df,evl=spt.chi2_contingency(observed=ss)
print('chi2 value is ',ch2,'\np-value is ',pval,'\ndegree of freedom is ',df,'\nexpected values are \n',evl)
분산 분석(Analysis of Variance : ANOVA)
- 반응치의 산포를 요인별로 분해하여, 반응치에 유의한 영향을 주는 요인을 찾아내는 통계적 기법
- 반응치의 산포를 제곱합(sum of squares)으로 나타내고, 이 제곱합을 각 요인의 제곱합으로 분해하여 오차에 비해 의미 있는 영향을 주는 요인을 선별하는 분석방법
- 요인(factor) 또는 인자 : 반응치에 영향을 미칠 것으로 예상되는 원인들 중에서 분석에서 고려되는 원인
- 수준(level) : 실험 또는 관측에서 선별된 요인의 값
- 반응치(response value) : 요인의 각 수준에서 얻어진 종속변수의 관측치
일원 분산분석(one-way ANOVA) : 한 요인만 고려하는 분산분석


일원 분산분석표

실습코드
# One way ANOVA
np.random.seed(5)
grp1=np.random.normal(3,4,30)
grp2=np.random.normal(3.1,4.1,30)
grp3=np.random.normal(2.84,4.3,30)
grp=[grp1,grp2,grp3]
import seaborn as sb
import matplotlib.pyplot as plt
sb.kdeplot(grp1)
sb.kdeplot(grp2)
sb.kdeplot(grp3)
plt.show()
sb.boxplot(data=grp)
plt.show()
print(spt.f_oneway(grp1,grp2,grp3))
F_stat,pval=spt.f_oneway(*grp)
ttt=robjs.r['exa13_6']
print(spt.f_oneway(ttt[0],ttt[1],ttt[2]))


교호작용(interaction)
- 두 개 이상의 요인이 서로 간섭효과를 일으키는 상호작용
- 이원 분산분석(two-way ANOVA) : 두 개의 요인에 대하여 반응치에 영향을 미치는지 분석
- 다원 분산분석(multi-way ANOVA) : 세 개의 이상의 요인에 대하여 반응치에 영향을 미치는지 분석
'빅데이터 관련 자료 > 수학&x통계' 카테고리의 다른 글
Lv3 | 모델링 | 교차 검증 정의 K-Fold - 2 : 교차검증 (0) | 2021.08.22 |
---|---|
파이썬 데이터 분석을 위한 수학 & 통계 - 4회차 (0) | 2021.08.18 |
파이썬 데이터 분석을 위한 수학 & 통계 - 3회차 - 2 (0) | 2021.08.17 |
파이썬 데이터 분석을 위한 수학 & 통계 - 3회차 - 1 (0) | 2021.08.17 |
파이썬 데이터 분석을 위한 수학 & 통계 - 2회차 - 2 (0) | 2021.08.11 |