R语言meta分析(2)单个率的Meta分析

R语言meta分析⑴meta包

介绍

在科学研究中,设立对照是一项基本原则,如病例对照研究的病例组和对照组、队列研究中的 暴露组和非暴露组,临床随机对照试验的试验组 和对照组。

对这些研究进行Meta分析时合并的指 标是两组的相对效应如OR值、RR值或是绝对效 应如危险度差值(risk difference,RD),然而在并 未设立对照组如流行病学中的现况研究.如要了 解某种病毒在全国的一个总体感染率而又没有足 够的时间或经费做全国性的调查时.我们可以通 过对现有文献报道的感染率进行Meta分析了解 该病毒在全国的感染情况。

单个率可包括流行病学现况研究中的患病率、感染率,临床试验的有效率,药物试验中的不 良反应发生率等,只要收集到各个原始研究的样 本量和事件发生数,在R软件就可以用metaprop 函数对单个率进行定量的Meta分析.来计算合并 的率及95%可信区间。通过观察图形是否对称初步判断有无发表 偏倚,结合metabias可以绘制出Begg和Egger图, 对发表偏倚进行统计学检验。 考虑到不同类型的单个率的资料的分布可 能会有不同的情况,R软件给出了五种估计率的 方法。如原始率不服从正态分布,可经过转换使 其服从或接近正态分布,从而提高合并结果的可靠性。

单组率的meta分析

定义:只提供一组人群的总人数和时间发生人数,多为患病率,检出率,知晓率,病死率,感染率。一般基于的研究为横断面研究。

缺点:异质性很难控制

方法: ①加权计算:即根据每个独立研究的样本量大小,给予不同的权重,对各独立样本的效应量率进行合并; ②直接等权相加: 即把各独立的结果事件直接等权相加,然后直接计算合并率,再用近似正态法计算其可信区间 ; ③调整后再等权相加: 即对各个独立研究资料的率进行调整后再行等权相加,计算出合并率的大小。

Metaanalysis软件是一款免费的软件且可以进行单个率的Meta分析.但是其为菜单操作,无法实现对原始率的转换。R软件是一种共享的免费统计软件,有专门的Meta分析程序包,可以进行单个率的Meta分析,而且提供了五种方法估算率,研究者可以根据原始率的分布选择合适的方法。本文结合编程和Meta分析程序包,以实例说明R软件在单个率Meta分析中的应用,以期为今后的Meta分析提供方法学指导。

具体操作

1.加载meta数据包

library(meta)

2.具体分析操作

  • 数据的读取
> library(meta)
> setwd('/home/ub/Rwork')
> meta_data <- read.csv('metadata.csv',header = T)
> head(meta_data)
    Author Year Case Number
1  Chen_et 2005    8     40
2 Beyer_et 2001   12     32
3   Ber_et 2003   10     50
4   Loe_et 2010  103    374
5  Alis_et 2011   20     69
6  Choi_et 2015   29    104

这是生成的一份记录疾病患病率的Meta分析。其中变量 Author Year Case Number分别表示文献的第一作者,发表年份,患者和调查的总人数和。

  • 样本率的估计方法的选择

单个率资料的Meta分析要求率的分布应该尽量的服从正态分布。如原始率不服从正态分布,可经过转换使其服从或接近正态分布,从而提高合并结果的可靠性。命令metaprop()进提供了5种样本率的估计方法,根据样本率的分布决定使用哪种合并方法,五种估计方法如下:“PRAW”(没有转换的原始率), ”PLN”(对数转换), ”PLOGIT“(logit转换), “PAS”(反正弦转换),“PFT“(Freeman-Tukey双重反正弦转换), 在进行Meta分析之前,对原始率及按四种估计方法进行转换后的率进行正态性检验,根据检验结果选择最接近正态分布的方法。具体的命令:

rate <- transform(meta,
p = Case/Number,
log=log(Case/Number),
logit=log((Case/Number)/(1-Case/Number)),
arcsin.size=asin(sqrt(Case/(Number+1))),
darcsin=0.5*(asin(sqrt(Case/(Number+1)))+asin((sqrt(Case+1)/(Number+1)))))



shapiro.test(rate$p)
shapiro.test(rate$log)
shapiro.test(rate$logit)
shapiro.test(rate$arcsin)
shapiro.test(rate$ darcsin)
 shapiro.test(rate$p)

    Shapiro-Wilk normality test

data:  rate$p
W = 0.89359, p-value = 0.3374

> shapiro.test(rate$log)

    Shapiro-Wilk normality test

data:  rate$log
W = 0.89239, p-value = 0.3309

> shapiro.test(rate$logit)

    Shapiro-Wilk normality test

data:  rate$logit
W = 0.89524, p-value = 0.3466

> shapiro.test(rate$arcsin)

    Shapiro-Wilk normality test

data:  rate$arcsin
W = 0.89211, p-value = 0.3294

> shapiro.test(rate$ darcsin)

    Shapiro-Wilk normality test

data:  rate$darcsin
W = 0.88822, p-value = 0.309

结果显示原始率,对数转换, logit转换, 反正弦转换, Freeman-Tukey双重反正弦转换的正态性的结果分别是W = 0.89359, p-value = 0.3374;W = 0.89239, p-value = 0.3309 ;W = 0.89524, p-value = 0.3466; W = 0.89211, p-value = 0.3294;W = 0.88822, p-value = 0.309, 综上,我们选择双重反正弦转换,当然也可以试着选择其他的转换类型, 然后通过比较异质性的大小,选择一个合适的类型。

  • 效应量的合并

通过命令metaprop(),进行率的合并。具体的命令:

meta1 <- metaprop (Case ,Number, data=meta, studlab=paste(Author),sm="PFT")
meta1

​结果显示,异质性检验Q=4.07 P<0.539 I2=0,因此 认为没有统计学意义上的异质性,所以优先选用固定效用模型,如果I2较大,说明6个原始研究间数据存在一定的异致性,则选用随机效应模型。

  1. 再看合并的率患病率= 0.1893, 95% CI: 0.1175-0.2736。

下图所示为Meta分析的森林图。

  • 森林图的绘制

具体的命令如下:forest(meta1)

从森林图中,非常简单和直观地看到Meta分析的统计结果

发表偏倚的检测:运用Egger检验检测发表偏倚,发表偏倚的命令是metabias()。具体的命令:

 metabias(meta1,k.min=6)

    Linear regression test of funnel plot asymmetry

data:  meta1
t = -0.17011, df = 4, p-value = 0.8732
alternative hypothesis: asymmetry in funnel plot
sample estimates:
      bias    se.bias      slope 
-0.1593819  0.9369520  0.5569597 

从结果中显示,t = -0.17011, p-value = 0.8732,因此认为不存在发表偏倚,

结论

Meta分析的结果显示:该病患者患病率为为0.2695 ,95%可信区间为[0.2359; 0.3044] 。

其他

  1. 模型选择的标准

若各原始研究间存在异质性,则使用随机效应模型;否则,则使用固定效应模型。

  1. 异质性的判断

Meta分析时,若I2<25%,则认为不存在异致性;若I2介于25%-50%之间,则认为异致性程度较小;若I2的值介于50%-75%之间,则认为存在一定的异致性;若I2>75%,则认为存在较大的异致性。

总结

本文结合实例,介绍了在R软件中如何实现单个率的资料Meta分析,由于单个率的Meta分析各原始文献为单个组的率,稳定性可能不同于具有两个组的研究,因此在合并时统计学异质性可能会比较大,当异质性较大时,首先要从专业性的角度对不同情况下的率进行亚组分析等来确定Meta分析的结果是否可靠。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券