Python数据可视化2.2 Ebola案例

简介:

2.2 Ebola案例


为了说明上述步骤如何得到容易理解的可视化结果,不妨考虑一下我们先前提出的问题:2014年,报道的伊波拉病毒(Ebola)死亡人数是多少?数据来自世界卫生组织(http://www.who.int/en/)或者人道主义数据交换中心(https://hdx.rwlabs.org)。虽然该数据的原始来源是世界卫生组织(World Health Organization,WHO),但人道主义数据交换中心(Humanitarian Data Exchange,HDX)是贡献者。然而,请注意,我们将在同一个地方得到本书的所有数据,以及Python资源代码。

该数据包括Ebola疾病在几内亚、利比里亚、马里、尼日利亚、塞内加尔、塞拉利昂、西班牙、英国和美国的传播信息。

该信息由以下网址提供:https://data.hdx.rwlabs.org/dataset/ebola-cases-2014/。

CSV格式的数据文件的内容包括指标、国家名称、日期和与指标相关的死亡数量或感染数量。一共有36个指标,前10个指标如下(其他指标可见附录):

过去7天可能的Ebola案例数

过去21天可能的Ebola死亡数

过去21天疑似Ebola案例数

过去7天疑似Ebola案例数

过去21天疑似Ebola死亡数

过去21天Ebola案例的确认比例

过去7天Ebola案例的确认比例

过去21天Ebola死亡的确认比例

过去7天疑似Ebola案例比例

过去21天疑似Ebola死亡比例

了解完这些指标后,本章一开始提出的问题“2014年,报道的Ebola死亡人数是多少?”可以转换为多组问题。为了简单起见,我们持续关注一个问题,并观察如何才能够进一步分析这些数据,得到一个可视化方法。首先,让我们看一些数据文件的读取方法。

对于任何一种编程语言,读取文件的方法不止一种,有一种是用Python中的pandas库。这种方法有高性能的数据结构和数据分析工具。另一个选择是用csv库读取CSV格式的数据文件。这两种方法有什么不同呢?它们都可以读取数据。在旧版的pandas中,会遇到大数据的记忆映射问题(如果CSV格式的数据文件很大),但是现在已完成优化。代码如下:

 

上面的过滤也可以用pandas完成,具体如下:

 

数据可从http://www.knapdata.com/python/ebola.csv下载。下一步是用read text (rt)格式打开数据文件。因为指标字符串中有deaths这个单词,所以在读取每一行后,可以过滤死亡人数为0的那行。这是一种非常直接的过滤,被用于忽略没有报道的案例或死亡情况。下面只给出过滤后数据的前五行:

 

 

如果每个国家报道的Ebola案例的所有数据是分散的,我们怎样进一步过滤?其实可以按国家列将它们进行分类。该数据文件有四行:indicator、country、date和number value。代码如下:

 

看完数据后,有两个指标是我们感兴趣的:

确认的Ebola死亡累积数

确认的、可能的和疑似的Ebola死亡累积数

通过多次可视化应用,我们也注意到其中一些国家,几内亚、利比里亚和塞拉利昂比其他国家有更多被确认的死亡人数。现在,我们想看看应该怎样对报道中这三个国家的死亡人数进行绘图:

 

 

 

结果看起来如下图所示。

我们可以对另一个指标绘制类似的图,即:确认的、可能的、疑似的Ebola死亡累积数。(虽然这不是最好的方法,但可以通过绘制一个类似的图来展示更多国家的数据信息。)

 

 

 

 

结果应该如下图所示:

相关文章
|
3月前
|
数据可视化 关系型数据库 MySQL
基于python大数据的的海洋气象数据可视化平台
针对海洋气象数据量大、维度多的挑战,设计基于ECharts的可视化平台,结合Python、Django与MySQL,实现数据高效展示与交互分析,提升科研与决策效率。
|
4月前
|
机器学习/深度学习 数据可视化 搜索推荐
基于python的汽车数据可视化、推荐及预测系统
本研究围绕汽车数据可视化、推荐及预测系统展开,结合大数据与人工智能技术,旨在提升用户体验与市场竞争力。内容涵盖研究背景、意义、相关技术如 Python、ECharts、协同过滤及随机森林回归等,探讨如何挖掘汽车数据价值,实现个性化推荐与智能预测,为汽车行业智能化发展提供支持。
|
4月前
|
数据采集 Web App开发 自然语言处理
新闻热点一目了然:Python爬虫数据可视化
新闻热点一目了然:Python爬虫数据可视化
|
3月前
|
数据采集 监控 数据库
Python异步编程实战:爬虫案例
🌟 蒋星熠Jaxonic,代码为舟的星际旅人。从回调地狱到async/await协程天堂,亲历Python异步编程演进。分享高性能爬虫、数据库异步操作、限流监控等实战经验,助你驾驭并发,在二进制星河中谱写极客诗篇。
Python异步编程实战:爬虫案例
|
4月前
|
数据采集 数据可视化 关系型数据库
基于python大数据的电影数据可视化分析系统
电影分析与可视化平台顺应电影产业数字化趋势,整合大数据处理、人工智能与Web技术,实现电影数据的采集、分析与可视化展示。平台支持票房、评分、观众行为等多维度分析,助力行业洞察与决策,同时提供互动界面,增强观众对电影文化的理解。技术上依托Python、MySQL、Flask、HTML等构建,融合数据采集与AI分析,提升电影行业的数据应用能力。
|
4月前
|
数据采集 搜索推荐 数据可视化
基于python大数据的商品数据可视化及推荐系统
本系统基于Python、Django与ECharts,构建大数据商品可视化及推荐平台。通过爬虫获取商品数据,利用可视化技术呈现销售趋势与用户行为,结合机器学习实现个性化推荐,助力电商精准营销与用户体验提升。
|
4月前
|
数据可视化 大数据 数据挖掘
基于python大数据的招聘数据可视化分析系统
本系统基于Python开发,整合多渠道招聘数据,利用数据分析与可视化技术,助力企业高效决策。核心功能包括数据采集、智能分析、可视化展示及权限管理,提升招聘效率与人才管理水平,推动人力资源管理数字化转型。
|
4月前
|
设计模式 缓存 运维
Python装饰器实战场景解析:从原理到应用的10个经典案例
Python装饰器是函数式编程的精华,通过10个实战场景,从日志记录、权限验证到插件系统,全面解析其应用。掌握装饰器,让代码更优雅、灵活,提升开发效率。
343 0
|
5月前
|
搜索推荐 算法 数据可视化
基于python大数据的招聘数据可视化及推荐系统
本研究聚焦于基于协同过滤的就业推荐系统设计与实现。随着就业压力增大和信息技术发展,传统求职方式面临挑战。通过分析用户行为与职位特征,协同过滤技术可实现个性化职位推荐,提升求职与招聘效率。研究涵盖系统架构、数据采集、算法实现及可视化展示,旨在优化就业匹配,促进人才与岗位精准对接,助力就业市场智能化发展。
|
6月前
|
数据采集 存储 NoSQL
Python爬虫案例:Scrapy+XPath解析当当网网页结构
Python爬虫案例:Scrapy+XPath解析当当网网页结构