首页 > 解决方案 > 贝叶斯元分析和异质性中的森林图

问题描述

我使用 OpenBUGS 软件运行了贝叶斯元分析

N<-dim(HPV16)[1]
beta.hat<-HPV16$logOR
se.hat<-HPV16$se.logor
model.file<- file.path("C:/....") 
info <- list ("N", "beta.hat", "se.hat")
inits <- function() {list (b=rnorm(1,0,100), beta=rnorm(N,0,100), prec=runif(1,0,100))}
parameters <- c("b", "beta", "tau2", "beta.pred") 
res<- bugs(info, inits, parameters, model.file, n.chains=3, n.iter=100000,debug=T,
           n.burnin=3000,n.thin=15)

我在 model.file 中指定的模型是

{
   for (i in 1:N) {
      varinv[i] <- 1/(se.hat[i]*se.hat[i]);
      beta.hat[i]  ~    dnorm(beta[i],varinv[i]);
          beta[i]  ~    dnorm(b,prec)}   

   b ~ dnorm(0.0,1.0E-6);
   prec ~ dgamma(0.001,0.001);
   tau2 <- 1/prec;
   beta.pred ~    dnorm(b,prec)

  }

我正在处理的数据集是:

id study           GMC   low    up income          vaccine   logOR se.logor
  <dbl> <chr>         <dbl> <dbl> <dbl> <chr>           <chr>     <dbl>    <dbl>
1     1 canada1        1.07  0.81 1.42  "high-middle"   biv      0.0677  -0.144 
2     2 canada2        2.09  1.68 2.6   "high-middle"   quad     0.737   -0.111 
3     3 multinational  0.92  0.82 1.03  "high-middle"   biv     -0.0834  -0.0576
4     4 mexico1        1.49  1.33 1.67  "high-middle"   biv      0.399   -0.0582
5     5 mexico2        2.13  1.57 2.89  "high-middle"   quad     0.756   -0.156 
6     6 senegal        0.49  0.42 0.580 "low          " biv     -0.713   -0.0860

有谁知道如何在贝叶斯元分析上下文中实现森林图?有谁知道如何考虑“收入”和“疫苗”变量来解释该模型中的异质性?

标签: rbayesianforestplotopenbugs

解决方案


推荐阅读