An Amateur Data Scientist

T-test (T-검정)

|
반응변수가 연속형일 때, 그룹간의 평균의 차이를 검정해보자.

T-검정

  • 일표본 T-검정(One sample T-test)
    : 같은 모집단에서 추출된 샘플을 통해, 모집단의 평균이 특정 상수와 같은지를 검정
  • 독립 표본 T-검정(Two sample T-test)
    : 두 모집단에서 추출된 샘플을 통해, 두 그룹의 모평균의 차가 특정한 상수와 같은지를 검정
  • 대응 표본 T-검정(Paired sample T-test)
    : 대응되는 두 모집단에서 추출된 샘플을 통해, 대응 표본의 모평균의 차가 특정한 상수와 같은지를 검정

Point1. 검정하고자 하는 대상에 따라 T-검정의 방법이 다르며,
     평균이 주 관심사이기 때문에 반응변수는 연속형이다.
Point2. “모집단의 분포는 정규분포이다.” 가정

일표본 T-검정

Example>
스타벅스의 자바 칩 프라푸치노는 Tall/355ml(12floz)에 340kcal라고 알려져있다. 사실인지 확인하기 위해, 전국 스타벅스 매장에서 랜덤으로 50개의 매장에서 50개의 자바 칩 프라푸치노의 칼로리를 측정했다.

가설

  • $H_0$ : 스타벅스 자바 칩 프라푸치노 = 340. ($\mu = 340$)
  • $H_1$ : 스타벅스 자바 칩 프라푸치노 ≠ 340. ($\mu ≠ 340$)

검정통계량

  • $\bar{X} : $ 표본 평균 - 랜덤으로 선택된 자바 칩 프라푸치노의 평균 칼로리
  • $\mu : $ 모평균 - 340
  • $s : $ : 표준편차
  • $n : $ : 관측치 개수 - 50

예제 R 코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
set.seed(123)
 
#### 일표본 T-test (One sample T-test) ####
 
### 예제 데이터 생성 (결과 비교를 위해 2개의 표본 생성)
# 표본으로 뽑힌 스타벅스의 자바 칩 프라푸치노를 통해, 자바 칩 프라푸치노가 340kcal인지 검증하려 한다.
# starbucks1 : 실제 평균이 340kcal인 모집단에서 뽑힌 표본
# starbucks2 : 실제 평균이 345kcal인 모집단에서 뽑힌 표본 
starbucks1 <- rnorm(n=50, mean=340, sd=5)
starbucks2 <- rnorm(n=50, mean=345, sd=5)
summary(starbucks1)
summary(starbucks2)
 
### T-test
t.test(x=starbucks1, mu=340, alternative="two.sided"# H0 accept
t.test(x=starbucks2, mu=340, alternative="two.sided"# H0 reject
cs


- t.test(x=starbucks1, mu=340, alternative=”two.sided”)
: 검정통계량 t=0.2628, p-value=0.7938, 유의수준 0.05에서 귀무가설 채택, 대립가설 기각

- t.test(x=starbucks2, mu=340, alternative=”two.sided”)
: 검정통계량 t=8.9528, p-value=<.0001, 유의수준 0.05에서 귀무가설 기각, 대립가설 채택

독립 표본 T-검정

Example>
스타벅스의 초콜릿 크림 칩 프라푸치노는 370kcal, 이디야의 초콜릿 칩 플랫치노는 384kcal라고 알려져있다. 두 브랜드 커피의 칼로리 차이가 14kcal 인지 확인하기 위해, 전국 스타벅스와 이디야에서 각각 랜덤으로 50개의 매장에서 50개의 프라푸치노와 플랫치노의 칼로리를 측정했다.

가설

  • $H_0$ : 스타벅스 초콜릿 크림 칩 프라푸치노 - 이디야 초콜릿 칩 플랫치노 = 14. ($\mu_1-\mu_2 = 14$)
  • $H_1$ : 스타벅스 초콜릿 크림 칩 프라푸치노 - 이디야 초콜릿 칩 플랫치노 ≠ 14. ($\mu_1-\mu_2 ≠ 14$)

검정통계량

  • $\bar{X} : $ 표본 평균 - $\bar{X_1}$ : 스타벅스 초콜릿 크림 칩 프라푸치노의 평균,
           $\bar{X_2}$ : 이디야 플랫치노의 평균
  • $c : $ 모평균의 차를 비교할 특정 상수 - 14
  • $s : $ 표준 편차
  • $n : $ 관측치 개수 - $n_{1} = n_{2}$ : 50

예제 R 코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
set.seed(123)
 
#### 독립 표본 T-test (Two sample T-test) ####
 
### 예제 데이터 생성  (결과 비교를 위해 이디야의 2개 표본 그룹 생성)
# 표본으로 뽑힌 스타벅스의 초콜릿 크림 칩 프라푸치노와 이디야의 초콜릿 칩 플랫치노를 통해,
# 프라푸치노와 플랫치노의 칼로리의 차이가 14kcal인지 검증하려 한다. 
# starbucks : 실제 평균이 370kcal인 모집단에서 뽑힌 표본
# ediya1 : 실제 평균이 384kcal인 모집단에서 뽑힌 표본
# ediya2 : 실제 평균이 374kcal인 모집단에서 뽑힌 표보
starbucks <- rnorm(n=50, mean=370, sd=5)
ediya1 <- rnorm(n=50, mean=384, sd=5)
ediya2 <- rnorm(n=50, mean=370, sd=5)
 
### T-test
t.test(x=ediya1, y=starbucks, mu=14, alternative="two.sided")
t.test(x=ediya2, y=starbucks, mu=14, alternative="two.sided")
cs


- t.test(x=ediya1, y=starbucks, mu=14, alternative=”two.sided”)
: 검정통계량 t=0.61157, p-value=0.5422, 유의수준 0.05에서 귀무가설 채택, 대립가설 기각

- t.test(x=ediya2, y=starbucks, mu=14, alternative=”two.sided”)
: 검정통계량 t=-16.116, p-value=<.0001, 유의수준 0.05에서 귀무가설 기각, 대립가설 채택

대응 표본 T-검정

Example>
어느 학교에서 토론수업이 언어능력을 향상시키는지에 대해 알아보고자, 400명의 학생을 대상으로 토론수업을 실시한 후 수업전, 후의 언어능력을 측정하였다. 토론수업이 효과가 있는지 검정해보자.

※ 대응 표본 T-검정은 표본이 짝지어 있으므로, 대응 개체의 차이가 독립된 하나의 표본이 될 수 있다 (ex. A학생의 사후 점수 - A학생의 사전 점수 = A학생의 사전, 사후 점수의 차).
즉, 일표본 T-검정과 같다.

가설

  • $H_0$ : 수업 후 - 수업 전 = 점수차 = 0, 토론수업의 효과가 없다. ($\mu_{after}-\mu_{before} = d = 0$)
  • $H_1$ : 수업 후 - 수업 전 = 점수차 > 0, 토론수업의 효과가 있다. ($\mu_{after}-\mu_{before} = d > 0$)

검정통계량

  • $\bar{D} : $ 대응표본 차이의 평균 - 점수차이의 평균
  • $d : $ 모평균 차이 - 0
  • $s : $ : 차이의 표준편차
  • $n : $ : 관측치 개수 - 50

예제 R 코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
set.seed(123)
 
#### 대응 표본 T-test (Paired sample T-test) ####
 
### 예제 데이터 생성 
# 토론수업이 언어능력에 끼치는 영향을 보기 위해, 
# 400명의 학생을 대상으로 토론수업 전과 후의 언어능력을 측정하였다. 
# 토론수업 전과 후의 점수는 매치가 되어있다. (짝이 있다.)
before <- runif(n=400, min=25, max=90)
diff <- runif(n=400, min=-2, max=5)
after <- before + diff 
 
### T-test
t.test(x=after, y=before, mu=0, alternative="greater", paired=TRUE)
t.test(x=diff, mu=0, alternative="greater")
cs


- t.test(x=after, y=before, mu=0, alternative=”greater”, paired=TRUE)
- t.test(x=diff, mu=0, alternative=”greater”)
: 검정통계량 t=14.568, p-value=<.0001, 유의수준 0.05에서 귀무가설 기각, 대립가설 채택

Comments