Rでメタアナリシス ー統合的なデータ解析, meta, metafor, 臨床試験などー

Rでプレゼンテーション

メタアナリシスは、複数の関連研究からデータを統合し、効果量を定量的に評価する統計手法です。
臨床試験でよく使用されますが、例えば特定治療法の効果を各試験ごとに検討し、結果を統合することで治療法の総合的な効果を把握します。
ひとつの試験からでは得られない複数の試験結果から、治療法の有効性や安全性に関するより信頼性の高い結論を導くことができます。

大まかなメタアナリシスの手順は以下の通りです。
・文献の収集: 対象となる研究や試験の文献を集める。
・データの選択: 各研究から必要なデータを抽出し、統一された形式でまとめる。
・効果サイズの計算: 各研究の結果から効果サイズを計算。治療効果やリスク比などを含む。
・統計的な結合: 計算された効果サイズを統計的に結合し、総合的な効果サイズを求める。
・異質性の評価: 研究間の異質性を評価し、結果の一貫性を確認する。
・メタ回帰やサブグループ分析: 必要に応じて、異なる要因や条件に基づいて結果を詳細に分析

メタアナリシスとは?

複数の研究データを統合して、評価する統計手法です。臨床試験などでもよく使用されます。


1. メタアナリシス前の準備, データセットを見てみよう

メタアナリシスを行うには、どういうデータが必要なのか?
同じテーマで、複数の独立した研究から得た効果サイズのデータを使用します。
Rのmetaforパッケージ内には、メタアナリシス用のデータセットが複数登録されていますので、臨床試験のデータ例を見てみましょう。

install.packages("metafor")
library(metafor)
dat.bcg #1
#   trial               author year tpos  tneg cpos  cneg ablat      alloc
#1      1              Aronson 1948    4   119   11   128    44     random
#2      2     Ferguson & Simes 1949    6   300   29   274    55     random
#3      3      Rosenthal et al 1960    3   228   11   209    42     random
#4      4    Hart & Sutherland 1977   62 13536  248 12619    52     random
#5      5 Frimodt-Moller et al 1973   33  5036   47  5761    13  alternate
#6      6      Stein & Aronson 1953  180  1361  372  1079    44  alternate
#7      7     Vandiviere et al 1973    8  2537   10   619    19     random
#8      8           TPT Madras 1980  505 87886  499 87892    13     random
#9      9     Coetzee & Berjak 1968   29  7470   45  7232    27     random
#10    10      Rosenthal et al 1961   17  1699   65  1600    42 systematic
#11    11       Comstock et al 1974  186 50448  141 27197    18 systematic
#12    12   Comstock & Webster 1969    5  2493    3  2338    33 systematic
#13    13       Comstock et al 1976   27 16886   29 17825    33 systematic

dat.laopaiboon2015 #2
#      author year ai n1i ci n2i      age diag.ab diag.cb diag.pn        ctrl
#1     Balmes 1991  4  48  7  56   adults       1       0       0   amoxyclav
#2      Beghi 1995 22  69  2  73   adults       0       1       0   amoxyclav
#3   Biebuyck 1996 53 497 53 257   adults       1       1       0   amoxyclav
#4     Daniel 1991  5 121 10 120   adults       1       0       0 amoxycillin
#5   Ferwerda 2001  5  55  7  53 children       0       0       1   amoxyclav
#6       Gris 1996  6  34  2  33   adults       1       1       1   amoxyclav
#7     Harris 1998 11 125  4  63 children       0       0       1   amoxyclav
#8  Hoepelman 1993  4  48  4  51   adults       1       0       0   amoxyclav
#9  Hoepelman 1998  3  62  5  61   adults       0       1       0   amoxyclav
#10   Mertens 1992  1  25  5  25   adults       0       1       0 amoxycillin
#11   Sevieri 1993  5  25  2  25   adults       0       1       0   amoxyclav
#12  Whitlock 1995  0  29  2  27   adults       0       1       0   amoxyclav
#13    Wubbel 1999  1  39  2  49 children       0       0       1   amoxyclav
#14 Zachariah 1996  8 173  7 173   adults       1       1       1   amoxyclav
#15     Zheng 2002 12  38  2  42   adults       0       1       0   amoxyclav

#1 dat.bcg ←データセット例としてよく使われています。
Studies on the Effectiveness of the BCG Vaccine Against Tuberculosis
結核に対するBCGワクチンの有効性に関する研究(13の研究結果のデータ)
author character 著者名
year numeric 発表年
tpos numeric (ワクチン接種を受けた)群における結核陽性症例数
tneg numeric (ワクチン接種)群における結核陰性症例数
cpos numeric コントロール(ワクチン非接種)群における結核陽性症例数
cneg numeric コントロール(非接種)群における結核陰性症例数
ablat numeric 試験地の絶対緯度(度)
alloc character 治療割り付け方法(ランダム、交互、システマティック)

#2 dat.laopaiboon2015
Studies on the Effectiveness of Azithromycin for Treating Lower Respiratory Tract Infections
下気道感染症に対するアジスロマイシンの有効性に関する研究(15の研究結果のデータ)
author character 著者名
year numeric 発表年
ai numeric アジスロマイシンを投与した群における臨床的失敗例数
n1i numeric アジスロマイシン投与群における患者数
ci numeric アモキシシリンまたはアモキシクラブを投与した群における臨床失敗例数
n2i numeric アモキシシリンまたはアモキシクラブを投与した群における患者数
age character 試験の対象が成人か小児か
diag.ab numeric 急性細菌性気管支炎と診断された患者を含む試験(0/1:含まない/含む)
diag.cb numeric 急性増悪を伴う慢性気管支炎と診断された患者を含む試験(0/1:含まない/含む)
diag.pn numeric 肺炎と診断された患者を含む(0/1:含まない/含む)
ctrl character 対照群の抗生物質(アモキシシリンまたはアモキシクラブ)

総患者数、陰性数、陽性数などの情報をまとめていることが分かります。





2. メタアナリシス ―metafor, 相対リスク(RR)の分析, ランダム効果モデル, 平均リスク比―

使用するmetaforパッケージは、メタアナリシスを行うための関数が含まれています。
異なる効果サイズやアウトカムの指標を計算し、等分散・固定効果・ランダム効果モデルを適合させ、さまざまなプロット(フォレスト、ファンネルなど)を生成することができます。
上記のdat.laopaiboon2015を使用して、メタアナリシスを行います。

ai, n1i, ci, n2i は、2×2の表の値を表す:
群    失敗例数 患者数
介入群  ai    n1i
非介入群 ci    n2i

dat <- dat.laopaiboon2015
rma.mh(measure="RR", ai=ai, n1i=n1i, ci=ci, n2i=n2i, data=dat, digits=3)  #3 Mantel-Haenszel法による相対リスク(RR)の分析
#Equal-Effects Model (k = 15)
#I^2 (total heterogeneity / total variability):  65.30%  # 合計異質性
#H^2 (total variability / sampling variability): 2.88  # 合計の変動をサンプリング変動で割ったもの
#Test for Heterogeneity:   # 異質性の検定結果
#Q(df = 14) = 40.348, p-val < .001  # p値は0.001未満であり、異質性が存在する
#Model Results (log scale):
#estimate     se    zval   pval   ci.lb  ci.ub 
#  -0.083  0.117  -0.709  0.479  -0.311  0.146 
#Model Results (RR scale):
#estimate  ci.lb  ci.ub 
#   0.921  0.733  1.157   # 相対リスクの推定値

dat <- escalc(measure="RR", ai=ai, n1i=n1i, ci=ci, n2i=n2i, data=dat)  #4 対数リスク比と対応するサンプリング分散を計算
res <- rma(yi, vi, data=dat) #5 ランダム効果モデル
res
#Random-Effects Model (k = 15; tau^2 estimator: REML)
#tau^2 (estimated amount of total heterogeneity): 0.5874 (SE = 0.3897) #推定された総異質性の量
#tau (square root of estimated tau^2 value):      0.7664 #推定された tau^2 の平方根
#I^2 (total heterogeneity / total variability):   64.85% #総異質性の割合
#H^2 (total variability / sampling variability):  2.84 #全変動と抽出変動の比率
#Test for Heterogeneity: 
#Q(df = 14) = 38.4438, p-val = 0.0004  #異質性の検定統計量
#Model Results:
#estimate      se    zval    pval    ci.lb   ci.ub    
#  0.0852  0.2673  0.3186  0.7501  -0.4388  0.6092    
#---
#Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

predict(res, transf=exp) #6 95% CI付き平均リスク比
#   pred  ci.lb  ci.ub  pi.lb  pi.ub 
# 1.0889 0.6448 1.8389 0.2218 5.3447

#3 Mantel-Haenszel法を用いて相対リスク(RR)などの効果サイズを計算する。aiは介入群のイベント数、n1iは介入群の総患者数、ciは非介入群のイベント数、n2iは非介入群の総患者数。digitsは有効数字の指定。

このメタアナリシスではMantel-Haenszel法を用いて相対リスク(RR)を推定しました。
異質性の評価によると、I^2は65.30%で、相当な異質性があることを示唆しています。
※異質性の判断基準(参考Website Cochrane Handbook(https://training.cochrane.org/handbook))
0~40% 重要でない異質性
30~60% 中程度の異質性
50~90% 相当な異質性
75~100% 高度の異質性

Equal-Effectsモデルによる分析では、全体の変動に占める異質性の割合(H^2)は2.88です。異質性の検定(Q統計量)も有意で、p値は0.001未満です。

モデル結果(log scale)では、対数尺度に基づく推定値が-0.083で、統計的な有意差はありませんでした(p値=0.479)。
相関区間(CI)は-0.311から0.146までです。
対数尺度での推定値がゼロから有意に異なるかどうかを示すもので、この場合は差がないと結論づけるのが適切と思われます。

モデル結果(RR scale)では、RRの推定値は0.921で、CIは0.733から1.157までです。
介入群と非介入群のリスク比RRが1に近いことを示唆しています。

この分析では介入の効果が統計的に有意であるとは言えず、リスクの相対的な変化が小さい可能性が示唆されます。

異質性が存在するので、結果の解釈は注意が必要であり、
ランダム効果モデルやサブグループ解析などを通じて異質性の影響を探り、結論を導き出す際に慎重な判断が求められます。

#5 ランダム効果モデル
異質性が存在しており、こちらのモデルでの総異質性の割合(I^2)が64.85%と高いことを示しています。
ランダム効果モデルの tau^2 推定値は0.5874で、異なる研究間での効果のばらつきが大きいことを示唆しています。
異質性の検定も有意であり、真の効果が均一ではない可能性があります。
対数リスク比の推定値は0.0852で、統計的に有意ではありません(p値 = 0.7501)。
信頼区間(CI)も-0.4388から0.6092まで幅広く、真の効果の位置が確定しづらいことを示しています。
異質性があるため、結果の一般化に注意が必要であり、個々の研究の特性を考慮して解釈するべきです。

Mantel-Haenszel法とランダム効果モデルの手法の異なる方法で異質性を評価しましたが、いずれも異質性があるという結論が得られました。

#6 平均リスク比
メタアナリシスの結果から算出されたランダム効果モデルにおける平均リスク比(Risk Ratio, RR)を指数変換しています。
具体的には、指数変換(exp)を適用して相対リスク(RR)の推定値を得ています。
pred:平均リスク比の推定値
ci.lb/ci.ub: 95%信頼区間の下限 / 95%信頼区間の上限
pi.lb/pi.ub: 95%予測区間の下限 / 95%予測区間の上限





3. メタアナリシス ―metafor, フォレスト図, ファンネル図-

フォレスト図は、異なる研究の効果サイズやその信頼区間を視覚的に表現するメタアナリシスの結果のグラフです。
各研究の点と線で示し、全体の効果サイズを中心に配置され、信頼区間が表示されます。

ファンネル図は、メタアナリシスのパブリケーションバイアスや小規模研究効果の影響を視覚的に評価するためのグラフです。
効果サイズの精度(標準誤差)を横軸に、効果サイズ自体を縦軸にプロットし、例えば、左側に小さな研究や負の効果が偏ると、出版バイアスが示唆されます。
視覚的に歪みを検出し、結果の信頼性を評価するのに役立ちます。

forest(res, slab=paste(dat$author, dat$year, sep=", "), showweights=TRUE) #7 フォレスト図
funnel(res) #8 ファンネル図

#7 フォレスト図
図の左から、研究の著者および発表年、エラーバー95%信頼区間、研究がメタアナリシス全体に占めるウェイト(重み)の割合(標本サイズに基づいて計算)、効果量の推定値[95%信頼区間]を示しています。

#8 ファンネル図

プロットが左右対称ではなく、左側に偏りが見られるため、出版バイアスがある可能性が考えられます。
出版バイアスの影響を軽減されるようなできるだけ偏りのないデータ収集を行うなど、慎重なアプローチが求められることが期待されます。

参考サイト
https://cran.r-project.org/web/packages/metafor/metafor.pdf
https://wviechtb.github.io/metafor/
https://training.cochrane.org/handbook




コメント

タイトルとURLをコピーしました