我将扮演一名数据工作者。在目前国内的新冠病毒疫情背景下,你觉得应该用数据做重新剖析一下疫情状况,恰好现在有一份2020.1.22至2020.2.13的全国疫情数据,我将对疫情现状做一个基本分析
作为一名python数据分析是,面对元素数据,我将完成以下工作:
a.读取数据,初步了解数据结构
b.清洗数据,使数据能做进一步分析
c.呈现结果
1.全国疫情确诊病例Top10那些省市
2.查看不同日期的疫情情况
3.提取某一地区多日的疫情情况
# 导包 import pandas as pd import warnings warnings.filterwarnings('ignore') # 设置不弹出警告 # 读取数据 df = pd.read_excel("/data_ncov.xlsx") # 查看数据基本结构 df.info()
![在这里插入图片描述](https://www.www.zyiz.net/i/ll/?i=20200229151239548.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTE1NDU1OQ==,size_16,color_FFFFFF,t_70)
print(df)
![在这里插入图片描述](https://www.www.zyiz.net/i/ll/?i=20200229151600950.png?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTE1NDU1OQ==,size_16,color_FFFFFF,t_70)
这里我们要把数据的date列的时间转换成datetime类型的格式,然后进行绘图
df["date"] = pd.to_datetime(df["date"]) # 我们提取2020-2-1日数据 data_2_1 = df[df[date]=="2020-2-1"] # 按照确诊做降序排序 data_2_1 = stored(data_2_1["确诊"],replace=True,ascending=False) # 绘制全国确诊病例top10省的柱状图 # 注意点:因为湖北数据量与其他省市差距太大,严重影响绘图效果,故剔除湖北省,在进行绘制 data_2_1.iloc[1:11].plot(x = "省市",y = "确诊",kind="bar",figsize=(15,10),color="red",grid=True,alpha = 0.8,ret = 45,title="2020-2-1全国确诊病例Top10")
![在这里插入图片描述](https://www.www.zyiz.net/i/ll/?i=20200229153347827.jpg?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTE1NDU1OQ==,size_16,color_FFFFFF,t_70)
# 绘制全国确诊和疑似病例Top10多系列柱状图 data_2_1.iloc[1:11].plot(x="省市",y=["确诊","疑似"]),kind="bar",figsize=(15,8),grid=True,alpha=0.8,rot=45,title="2020-2-1全国确诊,疑似病例Top10省市"
![在这里插入图片描述](https://www.www.zyiz.net/i/ll/?i=20200229153851901.jpg?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTE1NDU1OQ==,size_16,color_FFFFFF,t_70)
进阶版:把画图功能进行封装函数
def plotting(time,flag,top,kind): data_time = df[df["date"]==time] data_time.iloc[1:top].plot(x="省市", y=flag,kind=kind,figsize(15,8), gride=True, alpha=0.8, rot=45, tiltle="{}全国{}病例top{}省市".format(time,flag,top)) # 调用函数设置参数出图 fig("20200201",["疑似","确诊"],10,"barh")
![在这里插入图片描述](https://www.www.zyiz.net/i/ll/?i=20200229154826259.jpg?x-oss-
process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTE1NDU1OQ==,size_16,color_FFFFFF,t_70)