理学療法士がまとめたノート

統計学備忘録 since2016

Rを使って統計学を勉強するブログです

オッズ比の信頼区間

オッズ比、見込み比(odds ratio)または交差積比(cross-product)

前提
比は分母が小さくなると、数値が大きくなりすぎて正規近似の精度が悪くなります.比の対数であれば高い精度で正規近似することが可能になります. したがって、比の対数を考えていくことになります.

xm <- matrix(c("a","b","c","d"), nrow=2, byrow=T)
name <- list("暴露"=c("あり(A)","なし(B)"),"疾病"=c("あり","なし"))
dimnames(xm)<-name
xm

         疾病
暴露      あり なし
  あり(A) "a"  "b" 
  なし(B) "c"  "d" 


 p'A = \frac{a}{a+b}    p'B = \frac{c}{c+d}

オッズ比=\frac{\frac{p’A}{1-p’A}}{\frac{p’B}{1-p’B}}=\frac{p’A(1 - p'B)}{p’B(1 - p'A)}=\frac{\frac{a}{b}}{\frac{c}{d}}

暴露なし(A群)が、暴露あり(B群)より疾病に罹患する可能性が大きいか、小さいかを表す尺度.
p'A, p'B が小さい場合には、リスク比と同じ値になります.


オッズ比の信頼区間

比の対数を考えていきます.
標本のオッズ比=標本オッズ比( \frac{\frac{a}{b}}{\frac{c}{d}} =\frac{ad}{cb}=or)

母集団のオッズ比を母オッズ比(OR)とします.

標本オッズ比の対数 log\ or、 母リスク比の対数 log OR

正規近似で信頼区間を求めていくためには、以下の式が必要になります.

Z = \frac{ log\ or - logOR}{ log\ or の標準誤差}

したがって、以下の式が95%信頼区間を求める式になります

log\ or - 1.96(log\ orの標準誤差) \leqq logOR \leqq  log\ or + 1.96(log\ orの標準誤差)

以下、log\ orの標準誤差 = SE とします

log\ or - 1.96SE \leqq logOR \leqq  log\ or + 1.96SE

or\times exp(-1.96\times SE) \leqq OR \leqq  or\times exp(1.96\times SE)


log\ orの分散

log\ or=log\ a + log\ d - log\ b - log\ c より

V(log\ or)=\frac{1}{a} + \frac{1}{d} + \frac{1}{b} + \frac{1}{c}  デルタ法(delta method)によって近似的に求めたもの(参考webより)

#Rで95%信頼区間を求めてみます
rr <- a*(c+d)/(a+b)/c      #  = (a/(a+b))/(c/(c+d)) 
exp(log(rr)+c(1, -1)*qnorm ( c(0.025,0.975) )*sqrt(b/a/(a+b)+d/c/(c+d)))

例)
クロス表イメージ
(x <- matrix(c(3, 5, 6, 8 ),2,byrow=T))
     [,1] [,2]
[1,]    3    5
[2,]    6    8

a<-3; b<-5; c<-6; d<-8      #参考webより
( or <-  a*d/(b*c) )        #オッズ比
[1] 0.8
or*exp(qnorm ( c(0.025, 0.975) )*sqrt( 1/a + 1/b + 1/c + 1/d) )
[1] 0.1348801  4.7449559

#Rの関数を使えば瞬間で色々出力してくれます(やっぱり凄い)
install.packages("Epi")  
library(Epi)            
twoby2(x)

2 by 2 table analysis: 
------------------------------------------------------ 
Outcome   : Col 1 
Comparing : Row 1 vs. Row 2 

      Col 1 Col 2    P(Col 1) 95% conf. interval
Row 1     3     5      0.3750    0.1254   0.7152
Row 2     6     8      0.4286    0.2065   0.6837

                                    95% conf. interval
             Relative Risk:  0.8750    0.2972   2.5763     #リスク比と95%信頼区間
         Sample Odds Ratio:  0.8000    0.1349   4.7450        #オッズ比と95%信頼区間
Conditional MLE Odds Ratio:  0.8081    0.0884   6.3780 #Fisherの正確検定によるオッズ比と95%信頼区間
    Probability difference: -0.0536   -0.3956   0.3312

             Exact P-value: 1       #Fisherの正確検定によるp値
        Asymptotic P-value: 0.8059   #正規近似によるp値
------------------------------------------------------


参考web1 統計学入門−第3章
参考web2 R による統計処理
参考文献)柳川 堯 ; 観察データの多変量解析―疫学データの因果分析,近代科学社 ,2016