728x90
일원배치법 혹은 일원분산분석(One-Way ANOVA, One-Way Analysis of Variance)은 하나의 독립 변수(그룹 또는 처리)와 연속형 종속 변수(측정값) 간의 차이를 평가하는 통계적인 방법입니다. 이 방법으로 그룹 간의 평균 차이가 우연에 의한 것인지 통계적으로 검증할 수 있습니다.
일원배치법은 다음과 같은 과정으로 진행합니다.
- 가설 설정
- 귀무 가설(H0): 그룹 간의 평균은 모두 동일하다.
- 대립 가설(H1): 적어도 하나의 그룹의 평균은 다른 그룹과 유의하게 다르다.
- 기본 가정 검증
- 일원배치법에 따른 검증이 유효하려면 충족되어야 하는 몇 가지 가정이 있습니다. 이러한 가정에는 다음이 포함됩니다.
- 독립성: 각 그룹 내의 관측값은 서로 독립적인 것으로 가정합니다. 이는 한 그룹의 측정 또는 데이터 포인트가 다른 그룹의 측정에 의해 영향을 받거나 관련되지 않아야 함을 의미합니다. ANOVA의 독립성 가정은 실험 설계 과정에서 확보되어야 하며, 데이터 자체에서 독립성을 검증하기는 어렵습니다.
- 정규성: 각 그룹 내의 데이터는 정규 분포를 따라야 합니다. 이 가정은 표본 크기가 작을 때 주로 중요합니다.
Shpiro-Wilk 검정을 사용합니다. - 분산의 동질성: 분산으로 측정된 각 그룹 내 데이터의 변동성은 모든 그룹에서 거의 동일해야 합니다.
levene 검정을 사용합니다.
- 분산 분석 수행:
- 일원배치법은 분산 분석(ANOVA)을 사용하여 그룹 간의 평균 차이를 검정합니다.
('scipy.stats 모듈의 'f_oneway' 함수를 사용합니다.) - 변동의 비율인 F-통계량을 계산하여 그룹 간의 평균 차이가 우연에 의한 것인지 확인합니다.
- 일원배치법은 분산 분석(ANOVA)을 사용하여 그룹 간의 평균 차이를 검정합니다.
- 검정 및 결과 해석:
- 계산된 F-통계량과 p-value를 사용하여 귀무가설을 검정합니다.
- 만약 p-value가 사전에 설정한 유의 수준보다 작으면 귀무가설을 기각하고 대립 가설을 채택합니다.
- 이는 그룹 간의 평균이 통계적으로 유의하게 다르다는 것을 의미합니다.
아래는 python 예제입니다. 유의수준은 0.05로 정했습니다.
import scipy.stats as stats
# 샘플 데이터
group1 = [ 72, 84, 76, 88, 100]
group2 = [81, 63, 75, 97, 99]
group3 = [90, 62, 94, 76, 88]
# 기본 가정에 대한 확인
# 1. 독립성: 이 가정은 일반적으로 데이터 수집 프로세스에 내재되어 있으므로 특정 코드가 필요하지 않습니다.
# 2. 정규성: Shapiro-Wilk 사용
_, p_value1 = stats.shapiro(group1)
_, p_value2 = stats.shapiro(group2)
_, p_value3 = stats.shapiro(group3)
alpha = 0.05
print("정규분포를 따른다." if (p_value1 >= alpha) & (p_value1 >= alpha) & (p_value1 >= alpha) else "정규분포를 따르지 않는다.")
# 3. 등분산성: Levene 검정 사용
_, p_value_levene = stats.levene(group1, group2, group3)
print("등분산성을 충족한다." if p_value_levene>=alpha else "등분산성을 충족하지 않는다. ")
# 분산 분석 수행
f_statistic, p_value = stats.f_oneway(group1, group2, group3)
# 결과 출력
print("F-Statistic:", f_statistic)
print("P-Value:", p_value)
t='기각한다. 적어도 하나의 그룹의 평균은 다른 그룹과 유의하게 다르다.'
f='채택한다. 그룹 간의 평균은 모두 동일하다.'
print('귀무가설을 ',t if p_value<=0.05 else f)
Output:
정규분포를 따른다.
등분산성을 충족한다.
F-Statistic: 0.028846153846153844
P-Value: 0.9716330818653905
귀무가설을 채택한다. 그룹 간의 평균은 모두 동일하다.
※ 위 내용은 "빅데이터 분석기사 실기 준비를 위한 캐글 놀이터"를 따라가며 공부한 내용입니다.
https://www.kaggle.com/datasets/agileteam/bigdatacertificationkr
728x90
'데이터분석과 AI > 빅데이터 분석기사' 카테고리의 다른 글
[빅데이터분석기사 실기][작업형1] 반올림, 올림, 내림, 버림의 차이 (1) | 2023.05.23 |
---|---|
[빅데이터분석기사 실기][작업형1] IQR을 이용한 이상값 탐지 (1) | 2023.05.23 |
[빅데이터분석기사 실기][작업형3] 상관계수 (1) | 2023.05.20 |
[빅데이터분석기사 실기][작업형3] 정규성 검정(Shapiro-Wilk Test) (0) | 2023.05.18 |
[빅데이터분석기사 실기][작업형3] t검정(대응표본, 독립표본, 단일표본) (0) | 2023.05.18 |
댓글