基于疫情部分数据的数据可视化的实现
2022-04-20张俊坤
李 霖,张俊坤,陈 尧,张 宇
(攀枝花学院 四川,攀枝花 617000)
0 引言
Python语言是目前用于大数据分析的主流语言之一,Python语言拥有强大的数据分析功能,可实现对数据抽取、收集整理、分析挖掘及数据展示,Python语言包含Numpy,Pandas,Matplotlib,SciPy,iPython等数据分析开源库。在数据可视化方面有matplotlib开源库、seaborn开源库。matplotlib开源库主要针对二维图形的可视化。seaborn开源库是常用的数据可视化开源库,seaborn开源库主要用于三维数据的可视化操作。开发者可调用相应函数进行数据可视化操作,并根据相应的数据及数据的特性,选择不同类型的数据可视化方法。[1]
1 相关概念
1.1 数据预处理技术
新冠疫情数据具有数量多、冗余复杂、不完整性、不一致性、数据来源广泛等特征。数据预处理是数据分析的主要环节,数据预处理是解决原始数据问题的有效方法,合理的数据预处理可为后续数据可视化结果做铺垫。在数据的处理过程中,需要进行数据清洗工作,如数据集是否存在重复、数据集是否存在缺失、数据集是否具有完整性和一致性、数据集中是否存在异常值等问题,发现诸如此类的问题需要针对性地数据预处理。Python语言在数据处理领域常用Pandas开源库作为数据处理工具,[2]Pandas开源库具有大量标准的数据模型,能够提供高效操作大型数据集所需的工具。利用Python语言中Pandas开源库DataFrame方法,对新冠疫情数据组装、合并、类型转化、分类、异常值检测、过滤等数据预处理操作。
1.2 数据可视化
数据可视化的目的是洞悉蕴含在数据中的现象和规律。数据可视化包括对数据的发现、决策、解释、分析、探索和学习。数据可视化通过可视表达,增强人们完成某些任务的效率。数据可视化是探索数据潜在信息的主要途径之一。
1.3 TipDM建模平台
TipDM建模平台是基于Python语言引擎、用于数据挖掘建模的开源平台。TipDM建模平台通过拖拽的方式进行操作,将数据输入输出、数据预处理、挖掘建模、模型评估等环节通过流程化的方式进行连接。TipDM建模平台使用户便于理解及操作数据可视化。
1.4 matplotlib标准库
matplotlib标准开源库是Python语言的2D绘图开源库,开发者可通过简短的代码生成相应数据的直方图、饼图、条形图、直线图、散点图等。开发者可直接调用subplot方法对正余弦,开发者可以对图像进行多种常规操作,如开发者使用xlabel,ylabel函数对图像坐标轴命名、设置坐标轴的刻度和坐标轴的间隔。开发者可使用show()可以对图像进行显示。[3]此外,matplotlib标准开源库可以配合numpy开源库、dataframe开源库、pandas开源库使用。
2 数据分析步骤
2.1 空值判断
在Python语言中直接使用isnull()方法并不能直观地反应数据缺失值的信息。经过反复尝试,使用df.isnull().any()方法可以判断包含缺失值的数据特征,如果被判断数据特征存在缺失值则返回True,反之False。也可以使用isnull().sum()方法进行判断,此方法可直接显示数据特征缺失值的数量。[5]
2.2 重复值检测
在数据预处理阶段,需要检测数据样本是否存在重复的现象,是否进行数据样本重复检测会影响数据分析和数据可视化结果的准确性,如果数据样本存在重复数据,则需要进行重复数据样本的删除工作。Python语言中处理重复数据样本使用duplicated()方法。在duplicated()方法中,subset参数用于检测重复的数据样本范围,默认为数据集的所有数据特征,可指定特定数据特征。Keep参数用于标记数据样本的重复数据。
2.3 异常值判断
箱线图法:箱线图是利用数据集中不同位置分位数识别数据集中存在的异常点,箱线图法如图1所示。
图1 箱型图示例
数据集下四分位数:数据集25%分位点所对应值为(Q1)中位数;数据集50%分位点,对应值为(Q2)。
数据集上四分位数:数据集75%分位点,对应值为(Q3)上须,数据集Q3+1.5对应值为(Q3-Q1)下须,Q1-Q1.5(Q3-Q1)对应值为Q3-Q1表示四分位差。
在统计数据过程中,开发者使用train1.groupby(['城市'])方法对新冠疫情报告城市进行计数。使用train1['新增治愈'].groupby(train1['城市'])方法对数据集中的新增治愈数进行统计。最后,汇总处理数据[6]。
新冠疫情住院人数应为累计确诊-累计死亡-累计治愈的差值,实时住院人数使用train1['住院人数']=train1['累计确诊']-train1['累计死亡']-train1['累计治愈']方法进行统计,并进行汇总。使用同样的方法对各个省份的住院人数分别进行统计。使用ax.plot(table.index,table['累计确诊'],color='r')方法分别对累计确诊、累计治愈数、累计死亡数进行数据可视化操作,并对各个国家新冠疫情数据进行数据可视化。
表1 新冠疫情数据预处理结果展示
2.4 国内新冠疫情数据可视化
在数据预处理后,使用TipDM建模平台绘制新冠疫情仪表盘,建立数字大盘模型。以新冠疫情累计确诊人数为参考值,绘制出新冠疫情汇总概要信息图,以数据集中确诊时间为横坐标,确诊人数为纵坐标,绘制出时空变化情况图。以累计确诊人数为参考值绘制新冠疫情重点病区区域图。
3 常见的数据可视化应用
3.1 新闻设计
数据可视化是获取、处理、呈现数据必不可缺的数据操作环节,新闻设计依靠现在的媒体技术平台,新闻数据的信息量呈现指数式增长。在日常生活中,人们习惯在网上分享信息,互相交流生活,促进了全媒体时代的诞生。但信息过剩问题一直存在,在维基解密事件之后,新闻工作者们开始意识到如何将数据信息直观并有针对性地提供给用户[7]。数据可视化新闻设计设置成4个步骤:数据挖掘、数据过滤、数据可视化、完成新闻报道制作,构成数据新闻设计制作体系。数据可视化新闻设计,使得用户可以不用思考,就可以观察数据中潜在的信息。
3.2 医学影像
数据可视化技术可用于医学诊断、整形手术与辐射治疗规划等方面。数据可视化在医学应用中的核心技术是构建人肉眼看不到的身体器官的三维模型,进而显示医学图像,为诊断提供依据。医学影像数据的采集与可视化需要以统计巨大的数据量为基础,并且利用复杂的算法进行建模[8]。医学影像三维数据可视化,目前在脑部核磁共振图像序列重建、图像分割技术、标定多重数据集合图像技术、实时渲染技术方面应用广泛。
3.3 气象预报
数据可视化还可用于气象预报数据集,气象数据可视化需要呈现出动态变化的效果,因此,在将大量气象数据可视化时要注意实时监控,以便于做出对未来气象的预测和分析。通过将海量气象数据转变为图像,在用户界面上显示出某一个时刻的等压面、漩涡、等温面以及云层的位置与运动情况等,分析定位暴雨位置并分析其强度,可以为预报人精确分析与预测天气情况提供充分科学的依据。在气象预报数据可视化时,不论是普通云图,还是中尺度数值预报数据可视化。其根本目的都是将其中的数据细致地传达给用户[9]。
4 结语
总体而言,新冠疫情数据进行数据预处理操作后,可以有效地得出高质量数据集。对数据进行可视化处理,运用数据可视化技术可以直观地展示疫情蔓延地区及各国疫情发展趋势,深入分析全球疫情现状,分析国内疫情及国际疫情现状,了解国内和国际疫情发展趋势。基于数据可视化在新冠疫情数据的成功应用,可以将数据可视化推广到多类场景进行应用。