대응표본 t 검정 (Paired t-test)
예를 통해서 대응표본 t 검정이 언제 사용되는지 살펴보았다.
A학교 학생들이 영어시험을 학기 시작할 때 한번 보고, 학기 마칠때 한번 보았다고 가정하고
학기 사작할 때 본 시험을 사전검사 학기 마칠 때 본 시험을 사후검사라고 이름을 부여한 후 시험 성적을 입력하였다.
이렇게 성적을 입력한 데이터는 각각의 학생들은 사전검사와 사후검사 성적을 각각 갖게 되는데 이런 경우 대응표본 t 검정을 사용하면 된다.
또 다른 예로는, 약의 효과를 살펴보기 위해 동일 집단에 약 섭취 전후로 나누어 살펴보고자 한다면 이것 또한 대응표본 t검정이 된다.
즉 동일집단에 있는 개인이 갖고 있는 각 값의 평균의 차이가 있는지 살펴보고자 하는 것으로 위의 예에서 pre-test 평균과 post-test평균의 차이가 0인지 아닌지를 살펴보는 것이다. 물론 양측검정이 아닌 경우에는 평균의 차이가 0인지 아니면 둘 중 하나의 평균이 큰지 작은지 살펴보게 되는 것이다.
[예]
A 학교 교장은 학생들이 학기를 마치고 난후 수학성취도가 어떤지 궁금해서 학기 시작할 때 사전검사, 학기 마치기 전에 사후검사를 시행하였고, 교장은 사전검사 평균과 사후검사 평균에 차이가 있을거라는 가설 아래 유의수준 0.05에서 분석을 실시하였다.
명령어의 기본 형태는 다음과 같다.
t.test(데이터$사전검사, 데이터$사후검사, paired=TRUE) ##양측검정
t.test(데이터$사전검사, 데이터$사후검사, paried=TRUE, alternative="greater") ##or "less", 단측검정
t.test(종속변수 ~ 집단변수, data=데이터명, paired=TRUE)
t.test(데이터1, 데이터2, paired=TRUE)
대응표본 t 검정을 위해 예시 파일을 생성해보았다.
사전검사 점수를 나타내는 A데이터와, 사후검사 점수를 나타내는 B 데이터를 생성하였다. A와 B는 점수 정보만 가지고 있다.
n1 <- 200
avg1 <- 78.8
sd1 <- 11.2
A <- round(rnorm(n1, mean=avg1, sd=sd1), 1) ##사전검사 점수
n2 <- 200
avg2 <- 83.1
sd2 <- 9.4
B <- round(rnorm(n2, mean=avg2, sd=sd2), 1) ##사후검사 점서
A와 B는 다음과 같다.
만약 연구자가 A와 B와 같이 각각의 데이터 파일을 가지고 있고, 데이터 형태가 벡터의 형태이면 t.test(데이터1, 데이터2, paited=TRUE)를 사용하면 된다.
t.test(A, B, paired=TRUE) ##양측검정
Paired t-test
data: A and B
t = -5.2123, df = 199, p-value = 4.651e-07
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-7.323754 -3.303246
sample estimates:
mean of the differences
-5.3135
만약 위의 예와 달리 Student ID, PreScore, PostScore의 변수를 가지고 있는 achievement 데이터로 되어 있다면(아래 표 참조)..
Student ID | PreScore | PostScore |
1 | 78 | 81 |
2 | 89 | 90 |
3 | 65 | 64 |
t.test(achievement$PreScore, achievement$PostScore, paired=TRUE)
Paired t-test
data: achievement$PreScore and achievement$PostScore
t = -5.2123, df = 199, p-value = 4.651e-07
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-7.323754 -3.303246
sample estimates:
mean of the differences
-5.3135
그리고 만약 achive 데이터가 Student ID, Scores, TestType의 변수를 가지고 있다면(아래 표 참조)..
여기서 Scores에는 사전검사 점수와 사후 검사 점수가 있고, TestType에는 각각의 점수가 사전검사 점수인지 사후검사 점수인지 알려주는 변수이다.
StudentID | Scores | TestType |
1 | 80 | PreTest |
1 | 83 | PostTest |
2 | 76 | PreTest |
2 | 85 | PostTest |
데이터가 이와 같은 형식으로 구성되어 있다면.
t.test(Scores ~ TestType, data = achive, paired=TRUE)
Paired t-test
data: Scores by TestType
t = 5.2123, df = 199, p-value = 4.651e-07
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
3.303246 7.323754
sample estimates:
mean of the differences
5.3135
p-value가 0.05보다 작으므로 영가설을 기각할 수 있고, 사전검사 평균과 사후검사 평균사이에는 통계적으로 유의미한 차이가 있다고 말할 수 있다.