COVID-19全球病例动态条形图

本项目旨在通过动画条形图的形式,展示2020年2月至2021年4月间全球各国COVID-19病例的变化情况。与常规教程不同,将自行创建、处理和清洗数据集,以用于制作条形图。

问题陈述

面临的问题是全球COVID-19病例记录。正如德斯蒙德·图图所说:“希望是在所有黑暗中看到光明的能力。”

数据集介绍

原始数据可以在此链接找到:。如果想要跳过数据处理和清洗步骤,直接进行图表制作,可以在这里找到修改后的数据集:。这些数据由Joseph Assaker于2021年4月24日从worldometers.info抓取,涵盖了218个国家的数据。

所有国家的数据记录从2020年2月15日至2021年4月24日(每个国家435天),中国除外,中国的数据记录从2020年1月22日至2021年4月24日(每个国家459天)。数据列包括国家、大洲、累计确诊病例、累计死亡病例、累计康复病例、活跃病例、严重或危急病例、每百万人口总病例数、每百万人口总死亡数、总检测次数、每百万人口总检测次数和人口数。

数据处理

使用Python的pandas库来加载和处理数据集。首先,需要导入必要的库:

import pandas as pd import os

然后,加载数据集:

df = pd.read_csv("worldometer_coronavirus_daily_data.csv")

为了了解数据,查看数据集的头部和尾部:

df.head() df.shape df.tail()

由于涉及许多国家的数据,需要选择特定国家的数据进行分析。例如,可以查看津巴布韦的数据:

df.loc[df["country"] == "Zimbabwe"].shape

输出显示每个国家大约有450天的数据。还检查了数据集中的空值:

df.isnull().sum()

接下来,选择用于条形图的国家,并以累计确诊病例为系列,按国家名称进行分组。将挑选8个人口最多的邻国进行评估。

对于中国的数据,需要进行特殊处理,因为中国的数据记录天数最多。将中国的数据转换为系列,并确保所有列的长度一致,即435天的数据。

还需要处理日期列,只保留前435个值,因为日期与国家重复,拥有的最大天数数据是435天。

最后,将不同的系列合并成一个新的数据库,并将其转换为DataFrame列。还检查了是否有空值,并确保日期列的格式正确。

一旦得到了所需的格式和国家,就可以开始编码动画条形图了。使用bar_chart_race库来创建动画条形图。

pip install bar_chart_race
沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485