基于R shiny的法定传染病可视化分析系统的设计和初步应用

2021-04-01 12:45:34胡晓雯薛铭琰卞子龙蔡奇慧
关键词:法定传染病时空

胡晓雯,薛铭琰,张 枫,卞子龙,3,吴 静,蔡奇慧*

1南京医科大学生物医学工程与信息学院,2公共卫生学院,江苏 南京 211166;3浙江大学公共卫生学院,浙江 杭州310058

传染病一直伴随着人类的发展,对人类健康构成严重威胁,而基本卫生设施的完善,生活水平的提高以及药物和疫苗的研发又促使总发病率和病死率稳步下降[1]。在中国,1970—2007年,连续报告的18 种传染病的年发病率不断下降,从每10 万人4 000多例下降到每10万人少于250例[2]。

目前国内针对法定传染病的时空分析较为成熟,如张淼等[3]利用空间自回归对甲乙类传染病进行空间聚集性分析,王志心等[4]利用机器学习的方法对各省份新型冠状病毒肺炎疫情进行预测。在可视化方面,金思辰等[5]基于传染病时空数据进行聚类分析,并设计可视化系统,但编程较为专业。高效清晰的数据可视化可以让研究人员更容易掌握客观情况并采取更有效的应对方法。用图形表现复杂的数据,比传统的统计分析法更加形象且具有启发性。因此,公共卫生研究人员可以借助传染病数据的可视化图表更好地寻找数据规律、分析推理、预测未来趋势。

Shiny 是其开发团队针对R 语言开发的网页应用开发框架,可允许用户使用纯R 语言开发界面简洁、功能强大可发布的网页应用。通过建立交互式图表和应用程序的Web框架,实现网页应用与数据处理的无缝衔接,可将分析结果转化为交互式Web视觉效果[6]。因此本研究利用它设计了一款集数据分析与可视化为一体的分析系统——中国法定传染病可视化分析系统。

了解传染病的流行趋势,加强传染病的预防和控制,对于公共卫生安全具有重要意义。本研究通过收集整理2004—2017年法定传染病的病例数、死亡情况、发病率、病死率和年龄分布数据,旨在分析中国39种法定传染病的流行情况,包括时间和空间趋势,为政府制定最佳防控策略提供科学依据。

1 资料和方法

1.1 资料

数据资料来自国家人口与健康科学数据共享平台(http://www.ncmi.cn/),收集2004—2017年应呈报的甲、乙、丙3 类共39 种法定报告传染病的发病数、死亡数、发病率、病死率和年龄分布数据。其中甲类2种、乙类26种、丙类11种。甲类传染病和乙类传染病中的肺炭疽和严重急性呼吸综合征(severe acute respiratory syndrome,SARS)在诊断后2 h内应在线报告,其余乙类和丙类传染病应在24 h内报告[7]。

1.2 方法

该系统由软件RStudio 在R 语言环境下(R-3.5.2)编程完成。通过安装多种功能的R 包(shiny、ggplot2、maps、pheatmap、gplots、plyr、dplyr、spdep、inla等),可实现多种统计分析与可视化功能。假设检验的水准α=0.05,为双侧检验。

Shiny是用于R的Web应用程序框架,可用于构建交互式Web 应用程序。创建应用程序需要两个R 脚本:一个名为ui.R 的用户界面脚本和一个服务器脚本server.R。用户界面脚本控制应用程序的布局和外观。服务器脚本包含R对象以及如何显示它们的有关说明。该应用程序使用一种称为反应性的功能来支持交互性。这样,用户对文本、日期及其他输入内容进行修改后,相应的R 对象将得到自动更改。

本研究设计的可视化系统框架详见图1所示。

图1 可视化系统框架Figure 1 Framework of visualized system

2 结果

系统的主界面如图2所示,包括4个功能模块:总体概述、表格制作、统计分析和图形绘制,其中图形绘制的可视化功能为平台的特色与主要功能。本系统通过读取指定的传染病数据信息,对数据信息进行综合处理,通过数据汇总和分析,可以对多年的传染病数据进行统计学分析与可视化呈现。

图2 可视化系统主界面Figure 2 The main interface of the visual system

2.1 总体概述模块

总体概述模块中主要包括系统简介,介绍了可视化系统设计的背景,这是一款兼具数据分析与可视化功能的系统。同时在该模块中还以动态式和交互式地图的形式展现了2016 年中国地区(除港、澳、台)法定报告传染病的发病率分布情况,表1 展示了具体的发病情况。

2.2 表格制作模块

表格制作模块分为年龄数据、月份数据、年龄分层数据、地区数据、按传染途径分类数据5 个部分。如按年龄分层数据(图3),通过读入指定数据,可以对各层数据进行标化从而得到热图的目标数据集。其他数据类型类似,不赘述。

2.3 统计分析模块

在统计分析模块中,可以对发病情况进行人群、时间、空间和时空交互这4个层面的分析。

人群分析,分为年龄分层分析和疾病种类分析。图4 展示疾病年龄聚类分析的结果,如手足口病、腮腺炎在儿童中的发病要高于成人;而乙肝、淋病成人发病较多。同时能够找出发病年龄结构类似的疾病,如淋病和艾滋病的发病年龄结构类似,同样高发于成人。另外,对地区的传染病数据进行聚类分析,也可找出发病结构类似的省份。

表1 2016年中国地区法定报告传染病汇总表Table 1 The summary of notifiable infectious diseases of China in 2016

时间层面的分析,利用时间序列分析的ARIMA模型[8-9]、指数平滑模型预测未来的发病变化情况,并给出95%可信区间,预测未来年份的传染病发病变化情况。卡方趋势分析,则以统计表格的形式判断39种传染病发病率的升降情况。

图3 年龄分层数据Figure 3 Age stratified data

图4 年龄分层热图Figure 4 The heatmap of age stratified data

空间层面的分析,使用空间自相关分析以及重心迁移技术。空间自相关是检验空间单元属性聚集程度的一种有效方法,可以用来探索传染病的空间聚集性以及发病率的中心改变情况。空间自相关分为全局空间自相关和局部空间自相关两大类,Moran’s I 指数法是最为基本和重要的方法[10]。通过将Global Moran’s I 指数的观测值与其期望值E(I)进行比较,可以判定其空间相关性,但是仍然要严格检验两者之间的差异是否具备统计学上的显著性水平。可通过Z统计量来进行检验。根据正态分布检验,在显著性水平α下,当P <α,表明区域之间的属性分布具有显著的空间相关关系;当P>α,表明区域之间的属性分布不具有显著的空间相关关系[11-12]。对2004 年39 种传染病的空间分布进行分析,利用P值来判断聚集性是否明显,这里P=0.267 7表明聚集性并不明显(图5)。

时空交互分析,使用贝叶斯时空模型和时空扫描统计量的方法。贝叶斯时空模型是根据贝叶斯统计原理对具有时空属性的数据资料进行建模。模型中所有未知参数均作为随机变量,利用先验分布对风险估算时可借用邻近时空信息较好地解决复杂时空结构中的异质性问题,充分考虑传染病的时空属性[13]。相对于直接利用各省发病率来描述传染病的相对风险,贝叶斯时空模型可以分析区域间的相邻关系,使得估计结果不易受样本量与极端值的影响[14],除此之外,相较于空间层面仅能对1年情况分析的方法,贝叶斯时空模型将时间变量纳入分析。

图5 空间自相关分析Figure 5 Spatial autocorrelation analysis

2.4 图形绘制模块

在图形绘制模块,以折线图、极图、盒图、地图热力图等多种静态和交互式图片的形式将数据可视化,这也是平台的特色之一。

极图用颜色深浅显示了39 种传染病历年的发病变化情况(图6)。如流感扇区,从内向外显示了2004—2017 年流感的发病变化。每种传染病每年的发病率,做成极图形式,可以直观看出哪些年份传染病盛行,哪些传染病倾向于同时发生。

图6 极图Figure 6 Pole diagram

根据各省份的发病率画出盒图(图7),显示了各省份发病率随年份增长的分布情况。地图热图栏可通过导入各省的数据,绘制发病率、死亡率、病死率的地理空间趋势。该系统还可以绘制柱形图、条形图以及雷达图等交互式图形。

3 讨论

图7 各年发病率的盒图Figure 7 Box plot of incidence rates by year

目前,国内研究人员较少对传染病开展综合的时空可视化分析,更多集中在某种传染病的时间层次或者空间层次的分析[15-16]。本研究的中国法定传染病数据可视化分析平台是一款数据分析与可视化系统,特色在于有较完善的统计学分析,又提供了数据的自动制表与可视化结果的输出,更对时空数据进行动态化与交互式展示。该应用程序易于使用,使公共卫生研究人员无需复杂的统计或编程技能即可执行复杂的监视分析。它不仅可以作为空间和时空疾病数据的探索性工具,交互式地显示地图、时间序列和各种表格,还可以通过使用R 包INLA 拟合贝叶斯模型来获得疾病风险估计及其不确定性[17]。另外,对新数据亦可进行处理,并实时给出相关结果。

基于网络的法定传染病报告系统自2004 年投入运行以来,对传染病的及时发现和控制产生了很大影响。减少疾病,可为整个社会财政和人民健康带来很多好处。之前国内也有一些关于传染病研究的报道,但本研究的独特之处在于整合了中国地区(除港、澳、台)14 年来39 种法定报告传染病的全部数据集。可以及时了解最新法定报告传染病及呈报个案数目的状况,为公共卫生部门提供法规和计划管理信息。

当然,面对许多技术问题,本研究也尝试利用多种方法去解决。如为确保图像的实用性与可适用性,同时更好地呈现传染病数据的时空趋势与人群分布特征,本研究查阅大量相关文献,以寻找广泛使用的图形,并且据此设计几种特色图形,如年龄分层聚类图。同时不断调整相关绘图参数,达到美观大方的效果。

拓展动态式与交互式可视化是难点。可视化既可以是静态的,也可以是动态的。动态式可视化可以将时间线更具体地展现出来,设计成员采取层层叠加的方式,选取固定的过渡方式,最终形成动态图的格式。

了解传染病的流行趋势,加强传染病的预防和控制,对于公共卫生安全具有重要意义。为了描述疾病在人群、时间、空间上的分布特点,需要通过专业的统计学手段进行验证,也需要通过可视化的手段直观展现疾病分布特点。于是,本研究制作了折线图、年龄分层热图、滑珠图、地区分布热图等来描述2004—2017年的传染病分布特点。

本研究的设计分析也存在一定不足之处,相对于分析某一种具体的传染病,宏观分析较粗糙,没有考虑经济因素、气候因素(温度、湿度、风速、颗粒物PM2.5)等)[18]。因此,在未来的版本中,将为疾病映射、群集检测以及自定义数据可视化提供更多选项,从而增加其灵活性。扩展应用程序可以执行的分析类型,以便用户可以在更广泛的模型中进行选择,合并协变量,包括不同类型的时空随机效应,以及在不同形状的聚类中进行选择;另一个扩展是分析点数据的统计方法和可视化。梁祁等[19]利用移动百分位数法、控制图法对2009—2011年江苏省传染病进行预警,但缺乏预测模型,而本研究系统可以基于时间序列模型等方法对相关疫情进行预测。

综上所述,相比其他类似系统,设计的R shiny可视化统计分析系统操作简便,分析方法多样,提供了时间、空间的预测模型,有利于描述传染病的流行特点,便于公共卫生人员研究。

猜你喜欢
法定传染病时空
《传染病信息》简介
传染病信息(2022年3期)2022-07-15 08:25:08
传染病的预防
肝博士(2022年3期)2022-06-30 02:48:50
跨越时空的相遇
3种传染病出没 春天要格外提防
今日农业(2021年8期)2021-07-28 05:56:08
智取红领巾
重建院落产生纠纷 土地确权程序法定
今日农业(2020年17期)2020-12-15 12:34:28
镜中的时空穿梭
呼吸道传染病为何冬春多发
基层中医药(2020年3期)2020-02-13 02:48:50
玩一次时空大“穿越”
交叉式法定刑的功能及其模式选择