단일 모집단평균에 대한 가설검정/일표본t검정/t.test (1)
일표본 t 검정 (또는 단일 모집단평균에 대한 가설검정)을 어느 경우에 사용하는지 예를 들어보면...
[상황1]
A 자동차 회사에서 연비가 1리터당 30km 가는 자동차라고 홍보하며 ㄱ자동차를 출시하였다. 연비가 좋다는 말에 많은 소비자들이 ㄱ 자동차를 구매하였다. 그런데 ㄱ 자동차를 구매한 많은 소비자들이 연비가 리터당 30km가 안된다며 민원을 제기하였다. 이에 A자동차 회사가 과연 연비가 리터당 30km 안되는지 확인하기 위하여 무선표집으로 전국에서 차량 80대 뽑아왔고, 시내 환경과 가장 유사한 곳에서 연비를 검증하였다. 그 결과 carfuel.csv 파일이다.
표본수(sample size) : 80
영가설 : ㄱ 자동차의 연비가 1리터당 30Km이다.
연구가설: ㄱ 자동차의 연비가 1리터당 30Km가 되지 않는다.
유의수준(Significance level)은 0.05로 정하였고, 표본의 평균은 26.65로 나타났다.
R을 이용해서 단계별로 계산도 할 수 있고, t.test 명령어를 이용하여 쉽게 결과를 얻을 수도 있다. 먼저 t.test를 사용해서 결과를 산출해보았다.
명령어의 형태는 t.test(x=변수명, mu= , alternative=) 이다.
- 변수명: 우리 데이터에는 연비를 나타내는 값만 있으므로 변수명 대신 데이터명을 사용해도 무관하다.
- mu: 가설에서의 기준이 되는 평균을 입력하면 된다.
- alternative: 는 양측검정인지 단측검정인지를 결정하는 것으로two.sided 또는 less 또는 greater를 사용하면 된다.
ex <- read.csv("carfuel.csv", stringsAsFactors=FALSE)
t.test(x=ex, mu=30, alternative="less")
우리 예에서는 연비가 30km가 되는지 안되는지 확인하기 위한 것이기 때문에 단측검정이고 less를 사용하면 된다.
결과는 다음과 같다.
One Sample t-test
data: ex
t = -9.0583, df = 79, p-value = 3.742e-14
alternative hypothesis: true mean is less than 30
95 percent confidence interval:
-Inf 27.26451
sample estimates:
mean of x
26.64875
p-value = 3.742e-14가 우리가 정한 유의수준(0.05)보다 작기 때문에 연비가 30km라는 영가설을 기각하고 연비가 30km가 되지 않는다는 연구가설을 채택하였다. 즉, 유의수준 0.05에서 검정해본 결과 ㄱ 자동차의 리터당 연비가 30km보다 적은 것으로 판단되고 이는 통계적으로 유의미하다.
위의 결과에서 특이한 사항은 confidence interval인데 위의 결과대로라면 CI가 -Inf and 27.26451이다. 그런데 이것은 일반적인 Confidence Interval을 나타내는 표현방법이 아니기 때문에 단측검정으로 t.test 분석을 했을 경우 Confidence Interval을 two.side로 다시 계산해야한다.
만약 $conf.int를 추가하지 않는다면 양측검정으로 t.test를 하는 것이 되고 결과 역시 모든 값이 제시된다. 그렇기 때문에 Confidence Interval 값만 보고 싶다면 $conf.int를 꼭 같이 입력해주어야 한다.
t.test(x=ex, mu=30, alternative = "two.sided")$conf.int
그 결과 95% 신뢰수준은 25.91과 27.39이다.
> t.test(x=ex, mu=30, alternative = "two.sided")$conf.int
[1] 25.91235 27.38515
attr(,"conf.level")
[1] 0.95
지금까지 t.test를 이용하여 단일 모집단평균에 대한 가설검정(일표본 t검정)을 살펴보았다. 참고로 R 결과물을 다음의 그림으로 제시하였다.
단일 모집단평균에 대한 가설검정/일표본 t검정(2) 에서는 t.test 를 사용하는 것이 아닌 단계별로 어떻게 계산이 이루어지는 살펴보았다.