250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 코랩
- 기계학습
- 빅데이터
- 맥킨지
- 로지스틱회귀분석
- 비전공자
- RA
- 웹스크래핑
- 컨설팅
- 부트캠프
- 다중회귀분석
- PCA
- 캐글
- 선형대수학
- 인공지능
- 국비지원교육
- 데이터사이언스
- 컴퓨터공학
- 데이터시각화
- K-Digital Training
- BCG
- 주성분분석
- 웜업
- 코드스테이츠
- 컨설팅펌
- t-test
- 디지털트레이닝
- 파이썬
- Ai
- AI부트캠프
Archives
- Today
- Total
94년생 스피노자
[코드 블록] ANOVA (Analysis of Variance) 본문
728x90
이전에는 t-test를 다루었다.
t-test를 통해 우리는 다음 2가지 경우를 연구할 수 있다.
- 1개 그룹의 평균이 특정 수와 같은지
- 2개 그룹의 평균이 서로 같은지
오늘 소개할 ANOVA는 2개 이상의 그룹의 평균이 서로 같은지를 검정한다.
0. ANOVA의 필요성
왜 ANOVA를 써야하는 것일까?
집단이 늘어나면 t-test를 여러번하면 되지 않나 싶다.
예를 들어 집단이 3개가 있다고 하자.
그러면 다음과 같은 조합으로 t-test가 가능하다.
- 집단 1 & 집단 2
- 집단 1 & 집단 3
- 집단 2 & 집단 3
이렇게 하면 모든 집단 간에 t-test가 이루어진다.
그럼 ANOVA는 필요 없지 않은가.
우리는 신뢰수준에 대해 명심해야 한다.
여러번의 t-test는 각각 95%의 신뢰수준으로 진행되었다.
그리고 각 t-test는 독립사건이다.
따라서 각 t-test는 95%의 신뢰수준이더라도 전체로 보면 신뢰수준이 낮아진다.
신뢰수준 = 0.95 * 0.95 * 0.95 = 0.857
위와 같이 신뢰수준이 85.7%로 급감하는 것을 볼 수 있다.
이러한 현상을 막기 위해 ANOVA를 활용하는 것이다.
ANOVA는 한꺼번에 분석을 진행하기 때문에 신뢰수준 95%가 유지된다.
1. ANOVA를 위한 코드
ANOVA를 위한 코드는 극도로 간단하다.
from scipy.stats import f_oneway
f_oneway(group1, group2, group3)
위와 같은 코드로 ANOVA를 진행할 수 있다.
<결과해석>
F_onewayResult(statistic=2.6009238802972483, pvalue=0.11524892355706169)
결과값은 위와 같은 형태로 출력이 될 것이다.
statistic은 F 값을 뜻한다.
예시 결과에서는 p 값이 0.11로 95% 신뢰수준을 충족하지 못한다.
따라서 세 집단의 평균이 같다는 귀무가설을 기각하지 못한다.
모두 행복하길
-끝-
728x90
'철기시대 석공 벗어나기 > 코딩 조각' 카테고리의 다른 글
[코드 블록] K-평균 군집화 (K-means Clustering) (0) | 2021.05.22 |
---|---|
[코드 블록] 주성분 분석 (Principal Component Analysis) (0) | 2021.05.22 |
[코드 블록] t 검정 (t-test) (0) | 2021.05.14 |
[코드 블록] Plotly으로 그래프 그리기 (0) | 2021.05.10 |
[코드 블록] 캡챠 우회해서 웹 스크래핑/ 크롤링하기 (0) | 2021.05.09 |