治療群と対照群で30日以内の再入院を比べる研究では、二値アウトカムの効果をロジスティック回帰のオッズ比で報告する例が多くみられますが、対照群の再入院が3割近くある集団でオッズ比0.48を「再入院が52%減った」と読むと、実際のリスクの減り方を大きく見誤ります。オッズ比とリスク比は同じデータから計算できる別々の量で、どちらを主な指標に据えるかは研究デザインと対照群のリスク水準で決まります。
リスクとオッズという2つの尺度
対照群で100人中30人が再入院した場合、リスクは30/100=0.30ですが、オッズは再入院した人と再入院しなかった人の比なので30/70=0.43になり、どちらも同じ事象の起こりやすさを表していますが、分母が全員か非発生者かという違いがあり、この違いが群間の比をとった時に効いてきます。回帰で関連を式に表す考え方は回帰分析の目的:関連を式で表すと何が分かるのかで扱ったため、ここでは二値アウトカムに絞ります。
$$\text{RR}=\frac{p_1}{p_0},\qquad \text{OR}=\frac{p_1/(1-p_1)}{p_0/(1-p_0)} \tag{1}$$
式(1)は、リスク比が2群のリスクそのものの比であり、オッズ比が2群のオッズの比であることを表しています。$p_1$は治療群のリスク、$p_0$は対照群のリスクです。
この定義から分かるように、リスク比は「治療群では対照群の何倍の割合で事象が起きたか」とそのまま読めるのに対し、オッズ比にはそうした直接の読み方がありません。Greenland(1987)は、効果の指標を選ぶ際には計算の都合より解釈のしやすさを重視するべきだと論じ、オッズ比をリスク比の代わりとして読むことの限界を指摘しています。
対照群リスク30%でオッズ比が3.5になる関係
リスク比を固定した時にオッズ比がどの値になるかは、式(1)を整理すると対照群リスクだけで決まります。
$$\text{OR}=\text{RR}\times\frac{1-p_0}{1-\text{RR}\times p_0} \tag{2}$$
式(2)は、オッズ比がリスク比に補正の係数を掛けた値であり、その係数が対照群リスク$p_0$とリスク比の組み合わせで決まることを示しています。$p_0$が0に近ければ係数はほぼ1になり、オッズ比とリスク比は一致します。
実際に数値を入れると、真のリスク比が2の場合、対照群リスクが1%ならオッズ比は2.02ですが、10%で2.25、20%で2.67、30%で3.5、40%では6.0まで開きます。逆にリスク比が0.6の場合は、対照群リスク5%でオッズ比0.588、30%で0.512、40%で0.474となり、どれもリスク比より1から遠い側へ離れます。
この向きは偶然ではなく、式(2)の係数がリスク比1を境に1より大きくも小さくもなるためであり、オッズ比は常にリスク比と同じ側で、より1から離れた値になります。そのため、オッズ比をリスク比として読むと、効果が有益な方向でも有害な方向でも大きさを誇張することになります。
図で見る2つの指標の開き方
式(2)の関係を対照群リスク0.5%から45%までの範囲で描いたのが図1で、真のリスク比を2と0.6に置いた2本の曲線を並べています。破線がリスク比そのものの水準です。
# 真のリスク比を固定し、対照群リスクごとのオッズ比を描く
or_from_rr <- function(rr, p0) rr * (1 - p0) / (1 - rr * p0)
p0_grid <- seq(0.005, 0.45, by = 0.005)
png("or-rr-baseline-risk.png", width = 1100, height = 688, res = 200, type = "cairo")
plot(p0_grid, or_from_rr(2, p0_grid), type = "l", log = "y", ylim = c(0.35, 12),
xlab = "Risk in control group (p0)", ylab = "Odds ratio (log scale)",
lwd = 2, col = "firebrick")
lines(p0_grid, or_from_rr(0.6, p0_grid), lwd = 2, col = "steelblue")
abline(h = c(2, 0.6), lty = 2, col = c("firebrick", "steelblue"))
legend("topleft", legend = c("True RR = 2", "True RR = 0.6"), lwd = 2,
col = c("firebrick", "steelblue"), bty = "n", cex = 0.8)
dev.off()

図1で注目したいのは、曲線が離れ始める位置です。対照群リスクが5%前後までは2本とも破線にほぼ重なっていますが、10%を超えたあたりから差が広がり、リスク比2の曲線は急激に立ち上がります。
4,000例の再入院データでの比較
数値の開きを具体的に確かめるため、4,000例を治療群と対照群に2,000例ずつ無作為に割り付けたランダムに生成したデータセットを用意しました。重症度の高い患者と低い患者を半数ずつとし、対照群の30日再入院リスクを低重症度で5%、高重症度で50%、治療群ではどちらの層でもその0.6倍に置いています。
この設定では、真のリスク比は層別でも全体でも0.6ですが、全体の真のオッズ比は0.521になり、層別のオッズ比は低重症度で0.588、高重症度で0.429と層ごとに異なります。つまり、リスク比は層をまたいで一定でも、オッズ比は同じ効果を層ごとに違う値として表してしまいます。
その上で観察されたデータを見ると、対照群の再入院が2,000例中556例(27.8%)、治療群が2,000例中313例(15.65%)でした。そこから計算したリスク比は0.563(95%信頼区間0.497〜0.637)、オッズ比は0.482(0.413〜0.563)、リスク差は−12.2ポイント(−14.7〜−9.6)です。
同じデータから出た2つの比は、リスク比で読めば「再入院のリスクが約44%低い」、オッズ比をリスク比と取り違えれば「約52%低い」という表現になります。したがって、対照群リスクが3割近い研究でオッズ比を相対リスクの減少として書くと、効果を8ポイントほど大きく見せることになります。
この設定の対照群リスクを10分の1にし、40,000例へ増やしたデータセットでは、リスク比0.553に対してオッズ比0.545とほぼ一致しました。「まれな事象ならオッズ比はリスク比の近似になる」という従来の説明が成り立つのは、この程度までリスクが下がった範囲です。
交絡がなくても調整でオッズ比が動く性質
この再入院データでは重症度が割付と独立なので、重症度は予後因子ではあっても交絡因子ではありません。それにもかかわらず、重症度で調整したロジスティック回帰のオッズ比は0.379(0.319〜0.451)となり、未調整の0.482から大きく1と反対側へ動きました。
一方、同じ調整を修正ポアソン回帰で行ったリスク比は0.541で、未調整の0.563からの変化はわずかでした。Greenland、Pearl、Robins(1999)は、交絡がなくても調整する変数を増やすとオッズ比が1から遠い側へ動くこの性質を整理しており、リスク比やリスク差は同じ動き方をしません。
ここから導けるのは、ロジスティック回帰で調整前後のオッズ比を比べ、その差を交絡の大きさとして読む解析は誤りを含みうるということです。無作為化試験で予後因子を調整しただけでオッズ比が0.48から0.38へ動いたとしても、それは集団全体の効果とは別の、条件付きの効果を推定した結果であり、交絡が除かれた結果ではありません。
修正ポアソン回帰によるリスク比の直接推定
調整したリスク比を得る方法として、Zou(2004)は、二値アウトカムにポアソン回帰を当てはめ、分散をロバスト分散で推定する修正ポアソン回帰を提案しており、ポアソン分布の仮定は二値データでは成り立たないため、モデルに基づく標準誤差は過大になりますが、サンドイッチ型のロバスト分散で補正すれば区間の幅は適切になります。ロバスト分散の考え方はロバスト標準誤差:不等分散でHC0からHC3までで扱っています。
そこで、4,000例のデータを作り、ロジスティック回帰と修正ポアソン回帰で重症度を調整した効果を比べます。使うパッケージはbase R、stats、sandwichです。
# 4,000例を1:1で割り付け、重症度別の再入院リスクを置く
set.seed(42)
n_total <- 4000
treatment <- rep(c(0, 1), each = n_total / 2)
severity <- rbinom(n_total, size = 1, prob = 0.5)
base_risk <- ifelse(severity == 1, 0.50, 0.05)
risk <- base_risk * ifelse(treatment == 1, 0.6, 1)
readmit <- rbinom(n_total, size = 1, prob = risk)
cohort <- data.frame(readmit, treatment, severity)
table(treatment = cohort$treatment, readmit = cohort$readmit)
#> readmit
#> treatment 0 1
#> 0 1444 556
#> 1 1687 313
# 調整オッズ比と、ロバスト分散による調整リスク比
library(sandwich)
fit_logit <- glm(readmit ~ treatment + severity, family = binomial, data = cohort)
fit_pois <- glm(readmit ~ treatment + severity, family = poisson, data = cohort)
se_robust <- sqrt(vcovHC(fit_pois, type = "HC0")["treatment", "treatment"])
round(exp(c(or_adjusted = coef(fit_logit)[["treatment"]],
rr_adjusted = coef(fit_pois)[["treatment"]])), 3)
round(exp(coef(fit_pois)[["treatment"]] + c(-1, 1) * qnorm(0.975) * se_robust), 3)
#> or_adjusted rr_adjusted
#> 0.379 0.541
#> [1] 0.484 0.605
出力の1行目は、同じ調整変数を使っても、オッズ比が0.379、リスク比が0.541と大きく異なることを示しています。2行目はロバスト分散によるリスク比の95%信頼区間0.484〜0.605で、真の値0.6を含んでいます。
もう一点、読み違えやすいのは標準誤差の扱いです。ロバスト分散を使わずにポアソン回帰の標準誤差をそのまま使うと、対数リスク比の標準誤差は0.0707となり、ロバスト分散の0.0572より大きく、区間も0.471〜0.621と必要以上に広がります。
なお、リスク比を直接推定するもう1つの方法である対数二項モデルも、このデータでは収束してリスク比0.550を返しました。McNuttら(2003)が述べるように、対数二項モデルは推定されるリスクが1を超えそうな共変量の組み合わせで収束しないことがあり、その場合に修正ポアソン回帰が実用的な選択肢になります。
Zhang–Yu変換を調整オッズ比に使う危うさ
ロジスティック回帰の結果しか手元にない場合に、オッズ比をリスク比へ換算する式として広く引用されるのが、Zhang and Yu(1998)の変換式です。
$$\text{RR}=\frac{\text{OR}}{1-p_0+p_0\times\text{OR}} \tag{3}$$
式(3)は、式(2)を逆に解いたもので、オッズ比と対照群リスク$p_0$が分かればリスク比を逆算できることを表しています。未調整の2×2表であれば、この換算は代数的にリスク比と一致し、今回のデータでもオッズ比0.482から0.563が得られました。
ただし、調整オッズ比0.379に全体の対照群リスク27.8%を当てはめると、換算されたリスク比は0.458(0.393〜0.532)となり、修正ポアソン回帰の0.541とも真の値0.6とも離れ、区間は0.6を含みません。McNuttら(2003)は、調整オッズ比へこの変換を使うと点推定と信頼区間の両方が偏りうることを指摘しており、調整した結果を示したい場合は、換算ではなく修正ポアソン回帰や対数二項モデルでリスク比を直接推定する方が妥当です。
症例対照研究でオッズ比を使う理由
ここまでの議論は、コホート研究や無作為化試験のように対象者全員のリスクが計算できるデザインを前提にしています。症例対照研究では、症例と対照の人数を研究者が決めるため、2×2表から計算した「リスク」は母集団のリスクを表しません。
実際、4,000例のコホートから再入院した869例全員と、再入院しなかった人から同数の869例を無作為に選んだデータでは、オッズ比は0.465とコホート全体の0.482に近い値でしたが、同じ表から計算した見かけのリスク比は0.677となり、コホートの0.563から1の方へ歪みました。このように、オッズ比が抽出比率の影響を受けない性質があるため、症例対照研究ではオッズ比が自然な指標になります。
研究での位置づけと報告ガイドライン
医学論文での使われ方に目を向けると、Knolら(2012)は、無作為化試験やコホート研究でアウトカムが頻繁に起こる場合、ロジスティック回帰のオッズ比がリスク比を過大に見せる問題を整理し、修正ポアソン回帰などの代替手法を紹介しています。同じ論文では、オッズ比をリスク比のように解釈した記述が公表論文にみられることも指摘されています。
報告の面では、Moherら(2010)によるCONSORT 2010の解説文書が、二値アウトカムについて相対的な効果だけでなく絶対的な効果も示すことを推奨しています。そのため、無作為化試験で再入院を比べる場合、リスク比とともに、今回の−12.2ポイントのようなリスク差とその信頼区間を並べると、読者は相対的な大きさと実際に減った人数の両方を把握できます。
コホート研究と試験で主に据える指標
ここまで見てきたように、オッズ比は対照群リスクによって同じ効果が別の値になり、交絡がなくても調整で動くため、読者がリスク比として受け取った時のズレが大きくなります。そのため、コホート研究や無作為化試験で対照群リスクが10%を超える二値アウトカムを扱う場合は、主な効果指標をリスク比とリスク差にし、調整が必要なら修正ポアソン回帰で推定する方針を私は勧めます。
もっとも、ロジスティック回帰を使うこと自体が誤りというわけではありません。症例対照研究、事象がまれな研究、予測モデルのように個人ごとの確率を推定する目的では、オッズ比やロジスティック回帰が適しており、その場合もオッズ比を「リスクが何%減った」と言い換えないことが報告上の要点になります。
そのうえで、ご自身の研究でどの指標を主な結果に置くかは、研究デザイン、対照群リスクの見込み、調整する変数の性質によって変わります。Dr.データサイエンスでは、こうした効果指標の選択や解析方針のご相談を承っています。
参考文献
- Zhang J, Yu KF. What’s the relative risk? A method of correcting the odds ratio in cohort studies of common outcomes. JAMA. 1998;280(19):1690-1691.
- McNutt LA, Wu C, Xue X, Hafner JP. Estimating the relative risk in cohort studies and clinical trials of common outcomes. Am J Epidemiol. 2003;157(10):940-943.
- Zou G. A modified Poisson regression approach to prospective studies with binary data. Am J Epidemiol. 2004;159(7):702-706.
- Knol MJ, Le Cessie S, Algra A, Vandenbroucke JP, Groenwold RH. Overestimation of risk ratios by odds ratios in trials and cohort studies: alternatives to logistic regression. CMAJ. 2012;184(8):895-899.
- Greenland S. Interpretation and choice of effect measures in epidemiologic analyses. Am J Epidemiol. 1987;125(5):761-768.
- Greenland S, Pearl J, Robins JM. Confounding and collapsibility in causal inference. Stat Sci. 1999;14(1):29-46.
- Moher D, Hopewell S, Schulz KF, Montori V, Gøtzsche PC, Devereaux PJ, et al. CONSORT 2010 explanation and elaboration: updated guidelines for reporting parallel group randomised trials. BMJ. 2010;340:c869.


