2019ncov确诊人数最多的小区是哪一个?
2020-02-19 本文已影响0人
c0659eed21f5
来回答一个问题:已经开放的数据当中,确诊人数最多的小区是哪一个?
前文介绍了akshare的安装和简单使用,本文介绍使用akshare获取细化到每个小区的确诊人数数据。腾讯提供了一个公开的数据,可以供查询。为此,我们将使用到akshare的epidemic_area_detail接口。
epidemic_area_detail()
细化到每个小区的确诊人数
需要遍历每个页面, 如非必要, 请勿运行
https://ncov.html5.qq.com/community?channelid=1&from=singlemessage&isappinstalled=0
:return: 全国每个小区的确诊人数
:rtype: pandas.DataFrame</pre>
import akshare as ak
epidemic_area_detail_df = ak.epidemic_area_detail()
print(epidemic_area_detail_df)
一共1070, 要等待一会儿。
下载完成后,我们可以看一下江苏的数据:
image.png先看一下每个小区的确诊人数:
epidemic_area_detail_df['cnt_sum_certain'].unique()
array(['2', '4', '1', '-1', '3', '5', '7', '10', '6', '8', '9', '12',
'14', '19', '13', '11', '256', '119', '31', '15', '22', '16', '39',
'17', '23'], dtype=object)
发现:1. 数据是字符串格式;2.含有 ‘-1’,应该是不详。
import numpy as np
vlist = []
for i in epidemic_area_detail_df['cnt_sum_certain']:
if i != '-1':
vlist.append(int(i))
else:
vlist.append(np.nan)
epidemic_area_detail_df['cnt_sum_certain'] = vlist
来看一下除掉人数不详的情况,本数据共有多少人确诊:
np.nansum(vlist)
# 7229.0
确认人数最大值是多少?是哪一个小区?
epidemic_area_detail_df[epidemic_area_detail_df['cnt_sum_certain']==np.nanmax(vlist)]
揭晓答案