记得我是4月份回的兰州,几经波折,经历了多次疫情,印象中7月份兰州的那次疫情很严重,居家办公大概两周多时间,那段时间,感觉时间过得很慢,现在回想已是往事。
基于此,作者想借助数据处理工具爬取7月份甘肃各地市疫情数据,回顾当时疫情动态数据变化,使用Excel爬取疫情数据,镝数图表在线生成动态气泡图,下面一起来学习。
示例工具:Excel
本文讲解内容:Excel数据爬取
适用范围:数据爬取、动态可视化
数据爬取
数据爬取这里不用使用复杂的代码程序进行爬取,我们使用Excel中的PowerQuery进行数据爬取,首先构建省份和城市的对应关系,甘肃省共计12个地级市,框选数据,使用Ctrl+T创建表。
在表设计中将创建的表名称命名为城市表。
在数据选项卡下选择从其他源,新建一个空白查询。
右键查询,点击高级编辑器,进入高级编辑器界面。
将原有的高级编辑器里面的代码删除,复制下面的代码到高级编辑器中,这里可以看到未检测出语法错误,点击完成。
let
location =(province,city)=>Json.Document(Web.Contents("https://api.inews.qq.com/newsqa/v1/query/pubished/daily/list?province="&Uri.EscapeDataString(province)&"&city="&Uri.EscapeDataString(city)))[data],
Source = Excel.CurrentWorkbook(){[Name="城市表"]}[Content],
GetDataColumn=Table.AddColumn(Source, "data", each location([省份],[城市])),
ExpandedData1 = Table.ExpandListColumn(GetDataColumn, "data"),
ExpandedData2 = Table.ExpandRecordColumn(ExpandedData1,"data", {"date", "confirm", "dead", "heal", "confirm_add"}, {"日期", "累计确诊", "死亡", "治愈", "新增确诊"}),
ChangedType = Table.TransformColumnTypes(ExpandedData2,{{"日期", type date}, {"省份", type text}, {"累计确诊", Int64.Type}, {"死亡", Int64.Type}, {"治愈", Int64.Type}, {"新增确诊", Int64.Type}}),
FilteredRows = Table.SelectRows(ChangedType, let latest = List.Max(ChangedType[日期]) in each [日期] < latest)
in
FilteredRows
接下来会出现一些提示的内容,比如设置连接方式,默认就可以,点击连接。
在隐私级别设置忽略此文件的的隐私级别检查,点击保存即可。
如下即是使用Excel爬取下来的数据,数据包含甘肃省十二个地级市的疫情数据。
数据筛选
在日期这一列,使用日期筛选器筛选七月的数据。
点击关闭并上载,即可将数据加载至Excel工作簿。
此时加载至Excel工作簿的表是超级表,不是普通表的数据格式,在表设计中点击转换为区域,即可转换为普通表。
数据可视化
数据可视化我们使用镝数图表的在线绘图功能,在图表模板中选择动态圆堆积图。
选择图表模板后,点击编辑数据,将爬取的数据上传至表格中,可以调整数据的顺序。
点击编辑图表,可以设置动画的时长,以此达成数据动态呈现的效果。
同时在编辑图表时可以设置标签的格式等,让数据动态呈现时增加名称和数值。
在我的主页里点击视频,即可看到绘制完成制作的动态气泡图。
三年互联网数据分析经验,擅长Excel、SQL、Python、PowerBI数据处理工具,数据可视化、商业数据分析技能,统计学、机器学习知识,持续创作数据分析内容,点赞关注,不迷路。