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天前
|
搜索推荐 算法 程序员
6个案例15分钟让你了解Python套路
Python以其简洁易读的语法,成为编程初学者的首选。本文通过7个经典代码案例,带你快速了解Python编程的核心概念和常用技巧: 1. **九九乘法口诀**:使用嵌套循环打印乘法表。 2. **列表求和**:展示两种方法(for循环和内置函数sum())计算列表元素之和。 3. **素数判断**:编写函数判断一个数是否为素数。 4. **斐波那契数列**:生成指定长度的斐波那契数列。 5. **冒泡排序**:实现简单的冒泡排序算法。 6. **汉诺塔问题**:通过递归解决经典的汉诺塔问题。 这些案例不仅展示了Python的基础语法,更体现了编程思维的重要性,帮助初学者逐步掌握编程套路。
22 2
|
3月前
|
数据可视化 数据挖掘 DataX
Python 数据可视化的完整指南
Python 数据可视化在数据分析和科学研究中至关重要,它能帮助我们理解数据、发现规律并以直观方式呈现复杂信息。Python 提供了丰富的可视化库,如 Matplotlib、Seaborn、Plotly 和 Pandas 的绘图功能,使得图表生成简单高效。本文通过具体代码示例和案例,介绍了折线图、柱状图、饼图、散点图、箱形图、热力图和小提琴图等常用图表类型,并讲解了自定义样式和高级技巧,帮助读者更好地掌握 Python 数据可视化工具的应用。
187 3
|
3月前
|
数据可视化 Python
使用Python进行数据可视化的初学者指南
在数据的海洋里,我们如何能够不迷失方向?通过数据可视化的力量,我们可以将复杂的数据集转化为易于理解的图形和图表。本文旨在为初学者提供一份简明的入门手册,介绍如何使用Python中的Matplotlib库来揭示数据背后的故事。我们将从基础的图表开始,逐步深入到更高级的可视化技术,确保每个步骤都清晰易懂,让初学者也能轻松上手。让我们开始绘制属于你自己的数据图谱吧!
|
4月前
|
数据可视化 数据处理 Python
Python编程中的数据可视化技术
在Python编程中,数据可视化是一项强大的工具,它能够将复杂的数据集转化为易于理解的图形。本文将介绍如何使用matplotlib和pandas这两个流行的Python库来实现数据可视化,并展示一些实用的代码示例。通过这些示例,读者将学会如何创建各种图表,包括折线图、柱状图和散点图等,以便更好地理解和呈现数据。
|
4月前
|
机器学习/深度学习 人工智能 数据可视化
使用Python进行数据可视化:探索与实践
在数字时代的浪潮中,数据可视化成为了沟通复杂信息和洞察数据背后故事的重要工具。本文将引导读者通过Python这一强大的编程语言,利用其丰富的库函数,轻松入门并掌握数据可视化的基础技能。我们将从简单的图表创建开始,逐步深入到交互式图表的制作,最终实现复杂数据的动态呈现。无论你是数据分析新手,还是希望提升报告吸引力的专业人士,这篇文章都将是你的理想指南。
100 9
|
4月前
|
移动开发 数据可视化 数据挖掘
利用Python实现数据可视化:以Matplotlib和Seaborn为例
【10月更文挑战第37天】本文旨在引导读者理解并掌握使用Python进行数据可视化的基本方法。通过深入浅出的介绍,我们将探索如何使用两个流行的库——Matplotlib和Seaborn,来创建引人入胜的图表。文章将通过具体示例展示如何从简单的图表开始,逐步过渡到更复杂的可视化技术,帮助初学者构建起强大的数据呈现能力。
|
4月前
|
数据可视化 数据挖掘 定位技术
Python和Geopandas进行地理数据可视化
【10月更文挑战第22天】本文介绍了如何使用Python和Geopandas进行地理数据可视化和分析,涵盖从准备工作、加载数据、数据探索与处理、地理数据可视化、空间分析与查询到交互式地理数据可视化等内容。通过丰富的代码示例和案例演示,帮助读者掌握地理数据分析的基本方法,为实际应用提供支持。
261 19
|
4月前
|
数据可视化 定位技术 Python
使用Python进行数据可视化
【10月更文挑战第22天】在这篇文章中,我们将深入探讨如何使用Python进行数据可视化。我们将从基础的图表开始,然后逐步进入更复杂的可视化技术。我们将通过实例代码来展示如何实现这些可视化,以便读者能够更好地理解和应用这些技术。
58 5
|
5月前
|
数据可视化 数据挖掘 Python
使用Python进行数据可视化:探索与实践
【10月更文挑战第21天】本文旨在通过Python编程,介绍如何利用数据可视化技术来揭示数据背后的信息和趋势。我们将从基础的图表创建开始,逐步深入到高级可视化技巧,包括交互式图表和动态展示。文章将引导读者理解不同图表类型适用的场景,并教授如何使用流行的库如Matplotlib和Seaborn来制作美观且具有洞察力的可视化作品。
68 7
|
5月前
|
数据可视化 Python
使用Python进行数据可视化的初学者指南
【10月更文挑战第20天】本文旨在为编程新手提供一个简洁明了的入门指南,通过Python语言实现数据可视化。我们会介绍如何安装必要的库、理解数据结构,并利用这些知识来创建基本图表。文章将用通俗易懂的语言和示例代码,帮助读者快速掌握数据可视化的基础技能。
67 4

热门文章

最新文章

推荐镜像

更多