R语言程序包在SNP相关疾病关联性荟萃分析中的应用与功能介绍

2023-05-30 23:55门致雨王鑫朱琍燕
科技风 2023年14期
关键词:R语言

门致雨 王鑫 朱琍燕

摘 要:目的:SNP与疾病关联性研究的荟萃分析是近几年常见的研究类型。本文重点关注此类研究相关软件的使用情况,并对R语言中用于此类分析常用程序包的功能及使用方法作一简单介绍。材料方法:(1)通过检索中国知网2010年、2015年、2020年、2021年及2022年發表的SNP疾病关联性荟萃分析的研究论文,分析相关统计软件的使用频次;(2)统计了全球用于荟萃分析的R语言程序包下载情况;(3)最后结合相关资料对meta包及metafor包使用方法作了简单介绍。结论:(1)Stata与RevMan是此类研究中最常用的软件,R语言出现时间晚,使用次数少;(2)近年全球荟萃分析相关R程序包使用增长迅速,meta包及metafor包为其中的核心程序包;(3)meta包及metafor包均可实现SNP与疾病关联性研究的荟萃分析,metafor包功能全面,meta包使用简便,后者更适于初学者进行学习。

关键词:SNP;荟萃分析;统计软件;R语言

1 概述

荟萃分析,又称Meta分析、元分析,是一种对独立研究中的效应量进行定量综合以汇总结果的统计方法,常在系统综述中使用[1]。与单项研究相比,荟萃分析采用统计方法汇总多个结果,有利于更准确地估计效应量的大小。在独立研究的结果相互冲突时,荟萃分析可进一步量化各研究结果间的变异程度,有利于阐述其意义[12]。

荟萃分析自诞生以来不断发展,已出现多种不同类型的分析方法,包括单组率的荟萃分析、单纯P值的荟萃分析、Meta回归分析、累计荟萃分析、比较性荟萃分析、诊断性荟萃分析、个体数据荟萃分析、前瞻性荟萃分析以及常规荟萃分析等[3]。

单核苷酸多态性(single nucleotide polymorphism,SNP)是一种常见的可遗传变异,具有数据量大、分布均匀等特点,被广泛用于遗传病理学研究[4]。SNP可用于探寻疾病相关基因,也因其与个体表型差异、药物与疾病易感性相关,可作为生物标志物[5],具有丰富的研究价值。然而,由于实际研究中存在发表偏倚、纳入样本量过少、样本群体混杂等原因,遗传关联性研究表现出可重复性差的特点,其价值也一度受到质疑[6]。荟萃分析可合并多个研究结果,提高检验效能,也可发现并量化各研究间的异质性,恰可弥补遗传关联性研究的缺点。20世纪初有关SNP的疾病关联性荟萃分析数量呈指数级增长,在当今仍为重要的研究方向[7](图1)。

目前基础和临床研究中用于SNP相关疾病关联性荟萃分析的软件很多,例如Stata、RevMan、SPSS、R语言等,由于R语言具有开源、免费,扩展性强、程序包丰富,编程语法简单灵活等特点,近年来被广泛应用于统计和公共卫生领域[89]。然而,关于R语言在SNP疾病关联性荟萃分析中的应用目前仍缺乏系统综述和使用方法介绍。为此,本文将围绕此领域中常用的meta包及metafor包的功能,简要介绍基于R语言进行SNP相关疾病关联性荟萃分析的方法。

2 资料与方法

2.1 国内荟萃分析统计软件使用趋势调查

以“Meta”“荟萃分析”“元分析”“基因多态性”“SNP”为关键词检索中国知网(CNKI)2010年、2015年、2020年、2021年及2022年发表的期刊与硕博论文。通过阅读标题和摘要筛选出基因单核苷酸多态性与相关疾病的荟萃分析论文。通过阅读全文,记录各研究所使用的统计计算与绘图软件,最后对结果进行分析,使用Excel软件绘制堆积百分比图,展示近10余年有关SNP疾病关联性研究中统计软件的使用情况及变化趋势。

2.2 用于荟萃分析的R程序包调查

为了解R语言中可用于荟萃分析的常用程序包,检索并阅读相关文献,同时浏览R包存储网站The Comprehensive R Archive Network(CRAN)的荟萃分析专栏[10],整理出与荟萃分析相关的R程序包。通过使用R语言(版本4.0.5)的packageRank[11]程序包,获取了相应程序包自2013年至今的累计下载量,并对其进行排序后使用ggplot2程序包[12]绘制最常用程序包的累计下载量折线图。

2.3 meta包及metafor包功能介绍

meta包介绍文档包括R程序包参考手册及一本包含示例代码的荟萃分析详细教材[13]。metafor包除参考手册外,曾出版过一篇较为简洁的介绍程序包功能的论文[14],值得一提的是,作者针对该包还制作了程序包功能介绍网站[15],便于使用者快速掌握此包的使用方法。本文结合程序包说明文档及个人使用经验,将对这两个包的功能作一简要介绍。

3 结果

3.1 国内SNP相关荟萃分析统计软件变化趋势

2010年、2015年、2020年、2021年及2022年分别筛选得到相关文献95篇、204篇、112篇、97篇、51篇,记录到统计及绘图软件使用频次为106次、236次、135次、106次、63次。记录到的软件包括Stata(310次)、RevMan(292次)、SPSS(21次)、R(8次)、SAS(7次)、Comprehensive MetaAnalysis(3次)、open metaanalyst(2次)、Excel(1次)、Quanto(1次)及GraphPad(1次)。各年份中不同统计软件所占比例参见图2。

图2 国内SNP疾病关联性荟萃分析统计软件使用比例图

根据统计数据结果,国内有关SNP与疾病关联性研究的荟萃分析最常用的软件为Stata和RevMan,由于R语言在此领域运用较晚,在国内相关领域中的运用频次较世界其他国家仍然较低。在统计的年份中,仅在2020年至2022年间被使用了8次。

3.2 用于荟萃分析的R程序包下载频次

首先,结合Polanin等人关于荟萃分析R程序包的综述[16]及CRAN中Meta analysis任务介绍栏,共统计到169个用于各类荟萃分析的R程序包,据此推断R语言功能丰富,可完成多种类型的荟萃分析。其次,我们统计了2013年至今下载量最高的6个荟萃分析相关程序包(effectsize、brms、metafor、meta、epiR和forestplot)的下载情况,如图3所示,用于荟萃分析R语言程序包下载量在2013、2014年较低,此后逐年增高,这在一定程度上解释了2010年及2015年国内发表的此领域荟萃分析没有使用R程序的原因。此外,meta包[17]和metafor包[14]是较早发布用于荟萃分析的程序包,其下载量在所有用于荟萃分析的R程序包中始终保持高位,这两个包覆盖了传统荟萃分析的所有方面[16],功能丰富,是R语言荟萃分析的核心包,具有较高的应用价值。本文后续将介绍这两个程序包在SNP疾病关联性荟萃分析方面的应用。

3.3 Meta和metafor包功能介绍与对比

SNP与疾病关联性分析属于观察性研究的一种,目前关于遗传关联性研究荟萃分析的发表标准仍然缺乏,MOOSE规范可用于参考[1819]。结合报告规范,此类型荟萃分析需要使用统计软件的步骤主要包括效应量合并、异质性检验、亚组分析、敏感性分析、发表偏倚分析及相应图形的绘制。表1详细列举了meta包及metafor包实现上述功能的方式。

根据前期分析结果,我们发现meta包及metafor包均可以满足有关SNP相关疾病关联性荟萃分析的需求。然而,通过比较分析发现,metafor包在功能上更加全面,但许多统计方法在目前此类荟萃分析的论文中并不常见。metafor包功能更加全面的同时也带来了更为陡峭的学习曲线。例如在森林图绘制方面,metafor程序包需要手动完成代码,使用方法较meta包更为复杂,虽然其森林图绘制有很高的灵活性,但代码编写花费时间长,使用更为不便。因此,对于编程了解不多的研究者,若想使用R语言进行SNP疾病关联性荟萃分析,meta包因其较为简明易用的特点,是更为合适的选择。然而,当研究中出现较为复杂的问题,需要使用更为复杂的统计方法或图形解决时,建议使用metafor包相应的函数作为补充,以便更好地解决实际问题。

4 讨论

尽管R语言开源、免费,可拓展性高,功能强大,meta包及metafor包因其全面的荟萃分析功能越来越受到研究者的青睐,下载量逐年升高,但目前国内SNP相关荟萃分析论文的统计数据表明,R软件在国内受关注程度仍然较低,仅在近几年有少量运用。其中的原因可能有以下几点:一是R语言发展较晚,第一版meta包于2006年发布,初版metafor包于2009年发布,从下载曲线也可看出,2014年及之前荟萃分析相关程序包下载量普遍较低。而RevMan、Stata等软件发布早,在早期市场占用率已较高[20],故R这一起步较晚的软件在国内使用较少。

其次,R语言为程序语言,由于其缺少图形用户界面(GUI),操作常需要通过输入代码完成,有一定学习成本,而SNP相关疾病关联性分析又属较传统的荟萃分析,通常数据量小,分析步骤较简单,多数早期软件都可完成。再次,R语言参考手册均为英文,直至目前在国内可用于学习参考的帮助文档数量相较于其他软件也明显偏少,这也可能是阻碍R语言在国内流行的障碍之一。鉴于R语言拥有丰富的英文参考文档,本文虽对meta包及metafor包的功能与使用方法作了简要介绍,但受限于篇幅限制,无法对其进行更加全面详细的介绍,读者若需深入了解可进一步参考相关资料。

我们通过多次医学相关领域的数据分析实践发现,在花费一定时间掌握R程序后,后续分析由于每次代码改动不大,多次分析时可大大提高效率,其强大的绘图功能也使得图片的质量和自定义程度较高,无需花费额外时间通过其他软件绘制调整图形,这些都在一定程度上减轻了工作量,提高了科研效率。此外,R語言因其丰富的拓展性,可用于多种领域的统计分析和图片制作,更加有利于拓展研究的广度,增加创新性。

总之,R语言程序广泛应用于荟萃分析领域。本文通过研究荟萃分析中常用的两个程序包后发现,meta包及metafor包的功能十分完备,均可实现SNP疾病关联性研究荟萃分析。metafor包功能更加丰富,而meta包操作更加简便,因此,建议初学入门者使用meta包做荟萃分析,具有一定生信基础的研究人员可以使用metafor包完成较为复杂的研究分析。

参考文献:

[1]Khan S.MetaAnalysis:Methods for Health and Experimental Studies.Singapore:Springer Nature Singapore Pte Ltd,2020.

[2]Borenstein M,V.Hedges L,等.Meta分析导论[M].李国春,等,译.北京:科学出版社,2013.

[3]曾宪涛,冷卫东,郭毅,等.Meta分析系列之一:Meta分析的类型[J].中国循证心血管医学杂志,2012,4(01):35.

[4]李雄.单核苷酸多态性数据挖掘方法及其应用研究[D].湖南大学,2015.

[5]孙宇.关联分析中SNP与疾病关联关系建模研究[D].西安电子科技大学,2010.

[6]Colhoun HM,McKeigue PM,Smith GD.Problems of reporting genetic associations with complex outcomes.The Lancet,2003,361(9360):865872.

[7]翁鸿,李妙竹,耿培亮,等.遗传关联性研究及其Meta分析的简介[J].中国循证心血管医学杂志,2016,8(10):11561158.

[8]蒋文瀚,陈炳为,郑建光,等.R语言meta包在Meta分析中的应用[J].循证医学,2011,11(05):305309.

[9]李杏,刘涛,肖建鹏,等.R语言在公共卫生领域的应用:Meta分析[J].华南预防医学,2020,46(05):568570.

[10]CRAN Task View:MetaAnalysis[Internet].2021.Available from:https://CRAN.Rproject.org/view=MetaAnalysis.

[11]Li P.packageRank:Computation and Visualization of Package Download Counts and Percentiles.2021.(Accessed at https://CRAN.Rproject.org/package=packageRank).

[12]Wickham H.ggplot2:Elegant Graphics for Data Analysis.SpringerVerlag New York,2016.

[13]Schwarzer G,Carpenter JR,Rücker G.MetaAnalysis with R.Springer International Publishing,2015.

[14]Viechtbauer W.Conducting MetaAnalyses in R with the metafor Package.Journal of Statistical Software,2010,36(3):148.

[15]Viechtbauer W.metafor:A MetaAnalysis Package for R.github,2021.(Accessed at https://wviechtb.github.io/metafor).

[16]Polanin JR,Hennessy EA,TannerSmith EE.A Review of MetaAnalysis Packages in R.Journal of Educational and Behavioral Statistics,2016,42(2):206242.

[17]Balduzzi S,Rücker G,Schwarzer G.How to perform a metaanalysis with R:a practical tutorial.Evidence Based Mental Health,2019,22(4):153160.

[18]臧长海,李茁立.应用临床试验报告规范提高医学论文质量[J].山西医药杂志,2015,44(02):169173.

[19]Stroup DF,Berlin JA,Morton SC,et al.Metaanalysis of observational studies in epidemiology:a proposal for reporting.Metaanalysis Of Observational Studies in Epidemiology(MOOSE)group.JAMA,2000,283(15):20082012.

[20]楊悦.两种计算机软件在医学Meta分析中的应用[J].河北医药,2008(09):14301432.

基金项目:本项目的研究成果受“苏州大学‘大学生创新创业训练计划”(Undergraduate Training Program for Innovation and Entrepreneurship,Soochow University)资助,项目编号:202110285052、202210285072Z

作者简介:门致雨(2000— ),男,汉族,河南商丘人,苏州大学苏州医学院本科生;王鑫(2000— ),男,汉族,重庆武隆人,苏州大学苏州医学院本科生。

*通讯作者:朱琍燕(1982— ),女,汉族,江苏无锡人,医学博士,高级实验师,研究方向:疼痛发生发展的免疫分子机制和疾病关联性数据分析研究。

猜你喜欢
R语言
基于Holt—Winters时间序列的图书选题预测模型
基于R语言的轿车销量分析基于R语言的轿车销量分析
基于R语言时间序列的轿车销量分析及预测
R语言在统计分析中的使用技巧
基于R语言的学生成绩分析
基于GPS轨迹数据进行分析改善城市交通拥挤
基于R语言的Moodle平台数据挖掘技术的研究
基于R语言的湖南产业结构对其经济增长贡献分析
注重统计思维培养与应用为主导的生物统计学课程建设
人民币汇率的均值回复检验及Hurst指数计算