Two sample T-test example
dental = read.csv("data/dental.csv")
boxplot(resp~treatment,data=dental,col='red')
boxplot(log(resp)~treatment,data=dental)
var.test(resp~treatment,data=dental) # variance equality test
var.test(log(resp)~treatment,data=dental) # variance equality test, log-normal
t.test(resp~treatment,data=dental) # Welch test
t.test(log(resp)~treatment,var.equal=TRUE,data=dental) # pooled variance test
regout=lm(log(resp)~treatment,data=dental)
shapiro.test(resid(regout))
통계학에서 두 변수의 평균값이 같은지 알아보는 방법을 몇 가지로 나눠볼 수 있다.
- 동일한 실험 대상의 특정변수 값이 변했는지 확인하는 경우, 두 변수의 차를 T-test 해보면 바로 결과를 알 수 있다. 예를 들어, 어떤 다이어트 프로그램을 실행한 각 개인의 몸무게 변화를 보는 경우가 이에 속한다. (Paired sample)
- 동일한 분산을 갖는 경우 (Pooled variance)
- 서로 다른 분산을 갖는 경우 (Welch test) 2와 3의 경우를 Variance Equality Test를 통해 확인할 수 있다. 그에 앞서 박스플롯을 통해 시각적으로 확인해 볼 수도 있겠다. 위 데이터는 생물학 실험 중 박테리아 배양에서 추출한 박테리아의 수를 기록한 것이고 박테리아 수는 일반적으로 지수적으로 증가하는 것으로 알려져 있다. 따라서 Log 변환을 통해 정규분포를 따르게 되므로 log-normal distribution이라고 한다. Two sample t-test를 수행하기 위해 모집단이 정규분포를 따르는지 보기위해 Regression을 수행한 후 잔차항에 대해 Shapiro test를 수행하였다.
Written on February 16, 2020