본문 바로가기

R 통계

[R] 독립된 두 집단의 모평균 비교

Two-sample t-test

목적

  • 독립적인 두 모집단의 평균을 비교할 경우에 이용
  • 종속변수는 연속형 변수
  • 정규분포를 만족해야 하고, 관찰치 간에 독립성이 있어야함

검정 절차

  1. 정규성 검정
    two-sample t-test를 하기 위해서는 두 집단이 정규분포를 만족해야함. 따라서 shapiro.test(), qqline()등을 이용해 정규성 확인
  2. 두 집단의 분산/표준편차가 동일한지 확인해야함
    two-sample t-test의 경우 두 집단이 동일한 분산을 가질때와 그렇지 않을때의 식이 다르기에 F-test로 등분산 검정을 먼저 실시함. 
  3. t.test()를 실시하여 p-value가 0.05미만이면 귀무가설 기각 -> 두 집단의 평균은 다르다.
    t-test에 쓰이는 S^2는 표본분산이나 t-test는 모분산을 모를때 표본분산을 사용하는 방식

F-test

var.test()함수로 등분산 확인

 

H0 : (그룹1의 모분산)  = (그룹2의 모분산)       (p-value > 0.05)

H1 : (그룹1의 모분산) != (그룹2의 모분산)      (p-value < 0.05)

 

<사용법>
1.var.test(x1, x2)         ## x1과 x2는 벡터
2.var.test(y~x, data, conf.level)       ##data는 data.frame형태 x에 따른 y의 값에 대한 f-test

ex) v1 = x약을 적용한 집단의 성장률 벡터 / v2 = x약을 적용하지 않은 집단의 성장률 벡터
     var.test(v1, v2)   -> x약을 적용한 집단과 그렇지 않은 집단의 모분산 비교
    
    df =
구분 x약 적용(ctrl) 성장률(growth)
[1] 1(=Y) 10
[2] 0(=N) 13
[3] 1 14
[4] 1 11
[5] 0 23
[6] 0 25
[7] 0 15
[8] 1 12
... ... ...
가 있을때  var.test(growth ~ ctrl, df, conf.level = 0.95)를 사용하면 벡터연산의 결과와 같은 효과

 


t-test

1. 두 집단의 분산이 같은 경우

<사용법>
t.test(y~x,data , var.equal, conf.level)       ##var.equal = T를 명시해야함
ex)t.test(weight~g,data=p, var.equal = T, conf.level=0.95)

 

2. 두 집단의 분산이 다른 경우 

<사용법>
t.test(y~x,data , var.equal, conf.level)       ##var.equal = F를 명시해야함
ex) t.test(weight~g,data=p, var.equal = F, conf.level=0.95)

 

H0 : (그룹1의 모평균)  = (그룹2의 모평균)       (p-value > 0.05)

H1 : (그룹1의 모평균) != (그룹2의 모평균)       (p-value < 0.05)

 

'R 통계' 카테고리의 다른 글

[R] 단순선형회귀  (0) 2024.11.23
[R] 독립된 세 집단 이상의 모평균 비교  (1) 2024.10.19
[R] 표본과 추론  (0) 2024.10.19
[R] 기본함수 - aggregate()  (0) 2024.10.15
[R] dataframe과 열의 차이  (1) 2024.10.15