관련성을 평가할 때 많이 쓰는 교차비(odds ratio)는 엄밀하게는 위험비(risk ratio)와 다르다. 교차비와 위험비가 비슷하려면 (1) 관심 질환의 유병률이 낮거나(희귀 질환 가정), (2) 잘 설계된 환자-대조군 연구에서 산출됐을 경우이다. 실제 데이터에서는 이 두 가지 가정 어느 쪽도 만족하지 않는데도 교차비를 제시한 경우가 흔하다. 의학보건학 연구에서 교차비가 많이 쓰이는 이유는 범주형 결과 변수를 분석할 때 로지스틱 회귀분석을 주로 이용하고, 그 결과로 교차비를 쉽게 산출할 수 있기 때문이다. 위험비는 푸아송(Poisson)[각주:1] 회귀분석을 적용해서 계산할 수 있는데 많은 연구자들이 익숙치 않다. Joseph HilbeLogistic Regression Models 책 에서 제시한 oddsrisk 명령어로 교차비와 위험비를 둘다 산출해보고 비교해보도록 하자. (명령어는 findit oddsrisk로 찾아서 설치할 수 있고, 데이터셋은 링크한 CRC Press 책 소개 사이트에서 다운로드할 수 있다.)

. use anterior

. list

     +--------------------------+
     | count   death   anterior |
     |--------------------------|
  1. |   120       1          1 |
  2. |    67       1          0 |
  3. |  2005       0          1 |
  4. |  2504       0          0 |
     +--------------------------+

. oddsrisk death anterior [fw=count]

---------------------------------------------------------------------
Incidence for unexposed risk group =     0.0261
---------------------------------------------------------------------
Predictor    Odds Ratio   Risk Ratio     [95% Conf. Interval]
---------------------------------------------------------------------
anterior        2.2368       2.1670       1.6220       2.8807
---------------------------------------------------------------------

비노출군에서 발생 위험이 2.6%=67/(67+2504)로 낮으므로 교차비와 위험비가 비슷할 것이라는 예상을 해볼 수 있고, 실제 결과도 교차비가 2.24, 위험비가 2.17로 큰 차이가 없다.

poisson 명령어를 이용하여 푸아송 회귀분석을 수행하여 산출한 위험비와 비교해보자.

. poisson death anterior [fw=count], nolog irr robust

Poisson regression                                Number of obs   =       4696
                                                  Wald chi2(1)    =      26.69
                                                  Prob > chi2     =     0.0000
Log pseudolikelihood =  -776.2572                 Pseudo R2       =     0.0171

------------------------------------------------------------------------------
             |               Robust
       death |        IRR   Std. Err.      z    P>|z|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
    anterior |   2.166953   .3243484     5.17   0.000     1.616003    2.905741
       _cons |   .0260599   .0031423   -30.25   0.000     .0205748    .0330073
------------------------------------------------------------------------------

계산된 위험비가 2.17로 같음을 알 수 있다.

  1. 지금까지 통계학 관련 서적에서는 포아송으로 번역해 왔으나 국립국어원 외국 인명 표기에 따르면 '푸아송'이 맞다. [본문으로]
Posted by cyberdoc
:
다변수 로지스틱 분석에서 범주형 설명 변수의 빈도표는 unitab 명령어를 써보자. OR과 95% CI는 logistic 명령어와 같으므로 비교해보자. (unitab 명령어는 사용자 작성 명령어므로 찾아서 설치해야 동작한다.)

. webuse lowbirth
 

. unitab low age lwt, c(ptd smoke ht ui)
------------------------------------------------------------------------------
     low    |    low=1(%)      Total(%)     OR   [95% Conf. Interval]  p-value
------------+-----------------------------------------------------------------
     age    |      56(50)       112(100)   1.000    0.917     1.090     1.000
------------+-----------------------------------------------------------------
     lwt    |      56(50)       112(100)   0.989    0.976     1.002     0.093
------------+-----------------------------------------------------------------
     ptd  0 |      38(44)        87(78)     .        .         .        0.013
          1 |      18(72)        25(22)    3.316    1.256     8.750
------------+-----------------------------------------------------------------
   smoke  0 |      26(39)        66(59)     .        .         .        0.007
          1 |      30(65)        46(41)    2.885    1.319     6.307
------------+-----------------------------------------------------------------
      ht  0 |      49(48)       102(91)     .        .         .        0.185
          1 |       7(70)        10( 9)    2.524    0.618    10.308
------------+-----------------------------------------------------------------
      ui  0 |      42(46)        92(82)     .        .         .        0.048
          1 |      14(70)        20(18)    2.778    0.981     7.864
------------------------------------------------------------------------------

unitab 명령어 바로 뒤는 결과 변수이고 연속형 변수는 결과 변수 뒤에, 범주형 변수는 옵션으로 c( )에 넣으면 끝. 연속형 변수의 low=1 (%)는 low 변수가 1로 코딩된 빈도와 백분율이다.

'통계 연습' 카테고리의 다른 글

[Stata] batplot 명령어  (0) 2011.12.26
[Stata] oddsrisk 명령어  (0) 2011.10.20
[Stata] 표준화비 신뢰구간 계산  (0) 2011.10.14
[Stata] 위험 차(risk difference) 계산  (2) 2011.10.14
[Stata] optmatch2 명령어  (0) 2011.10.14
Posted by cyberdoc
:
표준화비(standardized mortality/morbidity ratio, 이하 SMR)는 두 인구 집단의 율을 간접 표준화(indirect standardization) 기법을 이용하여 비교하는 지표이다.

Stata에서 여러가지 방법으로 SMR과 95% 신뢰구간을 계산할 수 있는데, 로데이터가 없이 값만 얻어졌을
경우 신뢰구간을 계산하려면 사용자 작성 명령어인 eclpci 명령어를 쓰면 쉽다.

어떤 인구집단에서 관찰 사망자수가 40명이고, 기대 사망자수가 30명인 경우,

. eclpci 40 30, format(%3.2f)
SMR: 1.33  95% CI[0.95, 1.82]

SMR: 1.33이므로 연구 집단은 (기대 사망자수를 산출한 인구 집단에 비해) 사망이 33% 높지만, (95% 신뢰구간이 1을 포함하고 있으므로) 5% 유의수준에서 통계적으로 뚜렷한 차이는 없다.

. eclpci 20 50, format(%3.2f)
SMR: 0.40  95% CI[0.24, 0.62]

SMR: 0.40이므로 연구 집단은 (기대 사망자수를 산출한 인구 집단에 비해) 사망이 60% 낮고, 5% 유의수준에서 통계적으로 뚜렷한 차이가 있다.

Posted by cyberdoc
: