メタアナリシスのグラフ―フォレストプロットはどう描く?
- 2018.07.14
- メタアナリシス
メタアナリシスをまとめるときに、
必ず登場するのがフォレストプロット(forest plot)。
個々の研究の結果と、
統合した結果を一度に描いたグラフ。
フォレストプロットが簡単にきれいに描けるのが、
統計ソフトRのmetaforライブラリだ。
フォレストプロットを簡単に描くにはまず統合値の計算
統計ソフトRを使う。
紹介記事はこちら。
metaforライブラリを使う。
最初一回だけインストールする。
|
1 |
install.packages("metafor") |
使用するデータはこちらからダウンロード可能。
metaforライブラリを呼び出す。
escalc()で個々の研究の推定値estimate; yiと
分散variance; viを計算する。
measure=で指標を指定。今回のデータはオッズ比。
rma.uni()で統合オッズ比を計算する。
統合する方法は制限付き最尤推定量(REML)。
|
1 2 3 4 5 6 7 |
dat <- read.delim("C:/data/meta-analysis-nyumon-B1.txt") library(metafor) dat.escalc <- escalc(measure="OR", ai=a, n1i=n1, ci=c, n2i=n0, data=dat) res.reml <- rma.uni(yi, vi, method="REML", data=dat.escalc) |
フォレストプロットを描いてみる
デフォルトはこうなる。
|
1 |
forest(res.reml) |

真数の表示で対数目盛りにする方法
X軸(横軸)の値を対数から真数に変更するには
atransf=expと指定する。
atransf=expは、数値は真数だが、目盛りは対数とする指定。
at=でX軸の目盛りのラベルを規定する。
0.05, 0.25, 1, 4, 20の5つの値を表示するように指示している。
0.05, 0.25, 1, 4, 20の対数の位置に、0.05, 0.25, 1, 4, 20を表示する
という指示だ。
グラフを見てみると、
数値は真数のオッズ比0.05, 0.25, 1, 4, 20だが、
間隔は対数になっている。
0.05と20、0.25と4がそれぞれ1から同じ距離だ。
目盛り(距離)は対数で、目盛りに書いてある数値は真数ということだ。
とても便利な機能。
|
1 |
forest(res.reml, atransf=exp, at=log(c(.05,.25,1,4,20))) |

推定値の順番に並べ替える方法
order=”obs”の指定を追加した。
obsはobserved effect size(観察された効果の大きさ)の略語。
|
1 |
forest(res.reml, atransf=exp, at=log(c(.05,.25,1,4,20)), order="obs") |

分散が小さい順に並べる方法
指定はorder=”prec”。
precはprecision(精度)の略と見た。
|
1 |
forest(res.reml, atransf=exp, at=log(c(.05,.25,1,4,20)), order="prec") |

まとめ
統計ソフトRのmetaforライブラリforest()を使って、
メタアナリシスのフォレストプロットを描いてみた。
すごく簡単にきれいなフォレストプロットが描けるので、
ぜひ試してみてほしい。
-
前の記事
メタアナリシスは制限付き最尤推定量で統合するのがいい! 2018.07.13
-
次の記事
記事がありません