R语言实现网状Meta分析(1)

#R语言实现网状Meta
library(gemtc)
help(package="gemtc")
data<-gemtc::smoking #注意按照实例格式编写数据
net<-mtc.network(data$data.ab) 
#网状图
plot(net,mode="circle",displaylabels=T,boxed.label=F)
summary(net)
#网状model
model<-mtc.model(net,type="consistency",#"consistency", "regression", "nodesplit", "ume", or "use")
                 n.chain=4,#Number of chains in the model
                 likelihood="binom",#The likelihood to be used. If unspecified, a suitable likelihood will be inferred for the given data.
                 link="logit",#The link function to be used. If unspecified, a suitable link function will be inferred for the given data.
                 linearModel="random")#"random" or "fixed"
#软件选取及迭代
result<-mtc.run(model,
                sample="rjags",#采样方法"rjags"
                n.adapt=20000,#自适应(或调整)迭代次数
                n.iter=5000,#模拟迭代次数
                thin=1)#间隔
summary(result)
#绘制森林图
forest(relative.effect(result,"A"))
#收敛诊断图
par(mfrow=c(2,2))
gelman.plot(result,auto.layout = F)
#轨迹和密度图
plot(result)
#排序图
ranks<-rank.probability(result)
sucra(ranks)
plot(ranks)
plot(ranks,beside=T)
#联赛表
liansai<-relative.effect.table(result)
library(xlsx)
write.xlsx(liansai,file="联赛图.xlsx")
#异质性检验
hererogeneity<-mtc.anohe(net)
hereo<-summary(hererogeneity)
plot(hereo)#敏感性分析森林图

 结果解读:

上述,节点A、B、C、D代表不同的干预措施,连线代表两种干预措施间有直接比较。形成闭环代表有间接比较。

 

 上述,与A比较,B、C、D的OR值和置信区间。

上述, Gelman-Rubin-Brooks 收敛诊断图。经22000次迭代,趋向于1,且PSRF为1,效果最好。

 

 上述左边为轨迹图和右侧密度图。轨迹图达到重叠面积占波动的大部分,肉眼不能识别波动时效果最好。密度图达到接近正态分布时效果最好。

 上述为排序图,分别是堆叠图和直条图,颜色由浅入深,代表排位由先到后,柱形越高,代表排位越高的可能性越大。因此D>C>B>A。

上述为敏感性分析森林图,研究异质性。

具体图形解读可参考文献:易跃雄,张蔚,刘小媛等.网状Meta分析图形结果解读[J].中国循证医学杂志,2015,15(01):103-109.

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
R语言是一种用于数据分析和统计建模的编程语言,它提供了丰富的工具和包来进行各种类型的统计分析,包括网状meta分析网状meta分析是一种用于整合具有不同类型和结构的独立研究结果的方法。下面我将详细介绍如何使用R语言进行网状meta分析。 首先,我们需要准备数据。通常,网状meta分析的数据包含每个独立研究的效应估计值和其标准误差。可以使用R语言中的数据框来存储这些数据。 接下来,我们将使用R语言中的`netmeta`包来进行网状meta分析。首先,我们需要安装和加载该包。可以使用以下命令完成: ```R install.packages("netmeta") library(netmeta) ``` 然后,我们需要将数据转换为`netmeta`包可接受的格式。可以使用`netmeta::netmeta_prep()`函数来完成。该函数可将数据转换为`netmeta`包内部的数据结构。 ```R data <- netmeta::netmeta_prep(data) ``` 接下来,我们使用`netmeta::netmeta()`函数来进行网状meta分析。该函数的参数包括数据对象、效应尺度和模型类型等。我们可以通过以下命令运行网状meta分析: ```R result <- netmeta::netmeta(data, measure = "RR", model = "NET") ``` 网状meta分析会返回一个结果对象,其中包括了各研究的效应估计值、标准误差、置信区间以及总体效应估计值和置信区间等。 最后,我们可以使用`netmeta::forest()`函数或`netmeta::net_heatmap()`函数等绘函数来可视化网状meta分析的结果。这些函数可以生成森林或热,以帮助我们更好地理解和解释分析结果。 总而言之,使用R语言进行网状meta分析可以通过安装和加载`netmeta`包,并通过调用相应的函数来完成。这样我们就可以方便地整合独立研究结果以及进行相关的统计分析和可视化了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值