이표본 평균차이 검정 — 코드 실습

← BitStat2 Live 홈

두 독립 집단의 평균 차이가 우연인지 아닌지는 이표본 t-검정으로 판단합니다. R의 t.test()var.equal 옵션으로 등분산 가정(합동분산 t)과 이분산(Welch t)을 모두 지원합니다.

1. t.test()로 두 집단 비교

mtcars에서 변속기 종류(am: 0 = 자동, 1 = 수동)에 따라 연비(mpg) 평균이 다른지 검정합니다.

출력에서 \(t\) 통계량, 자유도(Welch는 소수점 자유도), \(p\)-값, 평균 차이의 신뢰구간을 확인하세요. \(p < 0.05\)이면 유의수준 5%에서 “두 평균이 같다”는 귀무가설 \(H_0: \mu_1 - \mu_2 = 0\)을 기각합니다.

두 집단의 분포를 눈으로 먼저 비교해 봅니다.

2. 검정 통계량을 손으로 계산

Welch t-통계량은 다음과 같습니다.

\[t = \frac{\bar{x}_1 - \bar{x}_2}{\sqrt{\dfrac{s_1^2}{n_1} + \dfrac{s_2^2}{n_2}}}\]

난수로 두 표본을 만들어 분모(표준오차)와 \(t\)를 직접 계산해 봅니다.

3. 연습 — 평균 차이의 표준오차

빈칸을 채워 \(\sqrt{s_1^2/n_1 + s_2^2/n_2}\) 를 계산하세요.

근호 안은 두 항의 합입니다. 두 번째 항이 s2^2/n2이니 첫 항은 같은 꼴로 s1^2/n1.

se_diff <- sqrt(s1^2/n1 + s2^2/n2)
se_diff

4. 연습 — p-값 꺼내기

t.test() 결과 객체에서 \(p\)-값을 꺼내 보세요. 결과 객체는 리스트라서 $ 로 성분을 꺼낼 수 있습니다.

str(res)로 성분 이름을 확인해 보세요. p-값 성분의 이름은 p.value입니다.

pval <- res$p.value
pval