๐ ์๊ฒฉ์ฆ, ์ดํ
[๋น ๋ฐ์ดํฐ ๋ถ์๊ธฐ์ฌ] ์ค๊ธฐ - 3์ ํ ๋ชจํ๊ท ๊ฒ์ (๋ชจ์ง๋จ 3๊ฐ) F-๊ฒ์ , ANOVA ๋ถ์
๋ฐ์ดํฐํ์ค
2024. 8. 20. 17:58
import pandas as pd
import numpy as np
import scipy.stats as stats
from scipy.stats import shapiro
shaprio ์ผ๋จ ๋ถ๋ฌ์ค๊ณ !
# 1. ๊ฐ์ค์ค์
# H0 : ์ธ ๊ทธ๋ฃน ์ฑ์ ์ ํ๊ท ๊ฐ์ด ๊ฐ๋ค. ( A(ํ๊ท ) = B(ํ๊ท ) = C(ํ๊ท ) )
# H1 : ์ธ ๊ทธ๋ฃน์ ์ฑ์ ํ๊ท ๊ฐ์ด ์ ์ด๋ ํ๋๋ ๊ฐ์ง ์๋ค. (not H0)
# 2. ์ ์์์ค ํ์ธ : ์ ์์์ค 5%๋ก ํ์ธ
# 3. ์ ๊ท์ฑ ๊ฒ์
print(stats.shapiro(df['A']))
print(stats.shapiro(df['B']))
print(stats.shapiro(df['C']))
# statistic, pvalue = stats.shapiro(df['A'])
# print(round(statistic,4), round(pvalue,4))
ANOVA ๊ฒ์ ์ ๊ฐ ์นผ๋ผ์ ๋ํด ๋ชจ๋ stats.shapiro๋ฅผ ๊ตฌํ๋ค
๋ง์ฝ ํ๋๋ผ๋ ์ ๊ท๋ถํฌ๋ฅผ ๋ฐ๋ฅด์ง ์๋๋ค๋ฉด ๋น๋ชจ์ ๊ฒ์ ๋ฐฉ๋ฒ(์์ฝ์จ)์ ์จ์ผ ํจ >> ๊ทผ๋ฐ ๋น๋ชจ์๋ ์ํ์ ์ถ์ ๋ ํ๋ฅ ์ด ์ ์
# 4. ๋ฑ๋ถ์ฐ์ฑ ๊ฒ์
# H0(๊ท๋ฌด๊ฐ์ค) : ๋ฑ๋ถ์ฐ ํ๋ค.
# H1(๋๋ฆฝ๊ฐ์ค) : ๋ฑ๋ถ์ฐ ํ์ง ์๋๋ค.
print(stats.bartlett(df['A'], df['B'], df['C']) )
๋ฑ๋ถ์ฐ์ฑ ๊ฒ์ ํ ๋ stats.barlett()
# 5.1 (์ ๊ท์ฑO, ๋ฑ๋ถ์ฐ์ฑ O) ๋ถ์ฐ๋ถ์(F_oneway)
import scipy.stats as stats
statistic, pvalue = stats.f_oneway(df['A'], df['B'],df['C'])
# ์ฃผ์ : ๋ฐ์ดํฐ๊ฐ ๊ฐ๊ฐ ๋ค์ด๊ฐ์ผ ํจ
print(round(statistic,4), round(pvalue,4) )
๋ชจํ๊ท ๊ฒ์ - ๋ชจ์ง๋จ 3๊ฐ - ์ ๊ท์ฑ O - ๋ฑ๋ถ์ฐ์ฑ O
stats.f_oneway() ํจ์ ์ฌ์ฉ
# 5.3 (์ ๊ท์ฑX) ํฌ๋ฃจ์ค์นผ ์๋ฆฌ์ค ๊ฒ์
import scipy.stats as stats
statistic, pvalue = stats.kruskal(df['A'], df['B'], df['C'])
print(round(statistic,4), round(pvalue,4) )
๋ชจํ๊ท ๊ฒ์ - ๋ชจ์ง๋จ 3๊ฐ - ์ ๊ท์ฑ X
stats.kruskal() ํจ์ ์ฌ์ฉ