升职加薪就靠它了——学习用Power BI打造COVID-19仪表盘
创作立场声明:本文内容为个人工作学习经验,仅供参考
身为长期奋战在底层的打工人,为了生存本人学习了不少雕虫小技,最近两年迷上了O365,试着用套装中的各种产品来简化/优化自己的工作。其中Power BI是其中一个应用范围非常广泛的产品,其实在本站已经分享过两篇Power BI的应用实例了。
我们都曾经在Excel里生成图表,而Power BI的优势在于可以创建交互式数据可视化效果和报表,无论是数据连接、混合和建模,还是数据可视化,样样都很在行。可将视觉对象精确置于所需的位置,并分析和研究数据,同时还能将内容发布到 Power BI Web 服务,与团队共享这些内容。
除此以外,Power BI可以安全地连接到云和本地中的数百个数据源,只需单击几下,即可转换和混合多个源中的数据,更方便地创建移动报表,用户可随时随地查看。
无论你是一个企业里哪个职能的工作人员,都可以利用Power BI结合自己的工作场景打造高效便捷的仪表盘。我从事的是IT运维的工作,平时经常用Power BI连接企业内部如SQL Server等数据库平台,写几条Query就可生成复杂的报表,可以实时交互刷新,让你在团队中脱颖而出。
今天分享的实例是利用Power BI创建一个反映全球COVID-19感染死亡人数的仪表盘,会着重于处理数据源的方法步骤。
首先建议安装一个本地应用程序Power BI Desktop。虽然Power BI也可以通过网页端直接生成报表,但是Desktop版本的功能更加丰富,也更方便调试。
Power BI Desktop安装文件的下载地址在此。大家可以根据自己电脑的实际情况选择32位或者64位的安装程序。
首次使用可以用公司邮箱注册账号。
个人觉得Power BI里如何建立效果酷炫的报表其实是次要的,最关键的还是选择一个准确有效的数据源。本文将会指导大家在Power BI Desktop中导入数据源,并且对数据进行预处理。
新冠病毒疫情情况最权威的发布机构就是约翰霍普金斯大学,他们在GitHub上也提供了源数据可供使用。
导入第一个数据源
在GitHub网站上依次选择case_covid_19_data,case_covid_19_time_series文件夹。
点击time_series_covid19_confirmed_global.csv文件,然后点击Raw获取原始文件。
从网页地址栏中拷贝完整的文件地址,即https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_confirmed_global.csv
下面我们就可以导入数据了,在Power BI Desktop中依次选择获取数据->全部->Web
然后将刚才的地址贴到URL里,可能会有值友问为什么选择Web而不是Excel呢,因为选择Web才能实时访问实现自动刷新数据。
终于可以连接GitHub的数据源了。
随后的界面会显示数据的预览,点击转换数据,因为我们还要对原始数据做一下预处理。
将左侧的Query名修改成Confirmed(确诊),这是为了之后更清晰地识别。
然后点击窗口上方将第一行作为标题。
可以注意到在此阶段,前4列标识地区/国家/地区,省/州以及经度和纬度,但是各列默认都是日期型数据,我们将对其进行更改。 按住Ctrl选中前四列,然后右键选择逆透视其他列。
可以看到数据类型已经准确了,然后依次双击最后两列,将列名改成Date(日期)和Confirmed(确诊)。
如此我们已经完成了第一个数据源的导入。为了丰富展示数据,我们需要添加第二个数据源,方法类似。这就是Power BI强大的地方,可以方便地导入多个数据源,建立关系连接。
导入第二个数据源
回到GitHub的网页,选中另一个CSV文件time_series_covid19_deaths_global.csv
回到Power BI Desktop的界面,右键选择之前创建的Query查询,选择复制(中文版的Power BI菜单选项容易产生歧义,这里的复制应为Duplicate,而非第一个复制Copy)。
将这个查询更名为Deaths(死亡人数),点击右侧面板源右边的齿轮标志。
将之前拷贝的第二个csv的数据源地址填入,点击确定。
点击关闭并应用,稍等片刻,Power BI Desktop会从数据源拉取数据,得到的结果如下。
合并两个数据源
至此,我们已经导入了确诊和死亡人数两个数据源,为了提高查询的效率,我们会将两个数据源汇总到一张表内。首先,我要确保Power BI不会读取单一表格,在查询的编辑界面,分别右键点击Confirmed和Deaths查询,取消启用加载的选择。(注意!这里千万不要点击关闭应用,否则会删除所有数据)
选中Deaths查询,将最后一列重命名为Deaths。
再选中Confirmed查询,点击主页选项卡中的合并查询->将查询合并为新查询
按照以下次序点击完成合并查询的操作。
选中新的查询,点开Deaths列右侧下拉框,仅选中Deaths并且取消使用原始列名作为前缀。
然后将Deaths.1列重命名为Deaths。
将新查询合并1重命名为COVID-19 Cases,点击关闭并应用。
完成后的表格如下,然后就可以自定义报表了。
设置数据自动刷新
设置自动刷新数据有很多种方式,比如可以设置Power BI网关定期刷新数据,还有一种更简单的方式就是修改Query的设置。进入查询编辑界面,分别选中Confirmed和Deaths查询,点击右侧的源。
在上方的编辑栏内可以看到公式为= Csv.Document(Web.Contents("https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_confirmed_global.csv"),[Delimiter=",", Columns=418, Encoding=65001, QuoteStyle=QuoteStyle.None])
将其修改为=Csv.Document(Web.Contents("https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_confirmed_global.csv"),[Delimiter=",", Encoding=65001, QuoteStyle=QuoteStyle.None])
然后再将右侧面板中更改的类型和更改的类型1分别删除。
最后一步,选择COVID-19 Cases查询,将Confirmed和Deaths列改为整数类型。
数据没问题了,然后就可以创建报表了。Power BI Desktop里已经包含了丰富的可视化图表,将图表类型拖放到报表面板中,然后将相应字段拖放到图表设置中即可。如果所含图表类型不能符合要求,也可以通过R语言生成更复杂的图表。
由于Power BI的实现模式完全是所见即所得,报表定制时可以多加调试。之后点击主页的发布按钮即可发布到Power BI的在线平台,且可以共享给别人。
网上已经有Power BI大神提供了该Power BI的文件可供下载,并且发布到云端可供随时浏览,这是在线报表地址。
可以看到美国虽然日增确诊数有所下降,但是疫情形势还是非常严重。
这是一个Power BI应用的简单实例,大家可以在实际工作场景中利用Power BI做出更多有趣的图表以供展示。



































值友5227264672
校验提示文案
Jonysun
校验提示文案
double07
校验提示文案
被演南非
校验提示文案
偷跑的小荔枝
校验提示文案
平凡中的嘿白调
校验提示文案
苍风一目连
校验提示文案
范俩仟Sam
校验提示文案
Lambda_Z
校验提示文案
神秘的大西瓜
校验提示文案
宝岗小学校草
校验提示文案
yju007
校验提示文案
nutria
校验提示文案
暴躁大老爹
校验提示文案
苹果大爷
校验提示文案
tempma
校验提示文案
老房的老房
校验提示文案
gxbatman
校验提示文案
木籽向前冲
校验提示文案
chpitt
校验提示文案
达尔文西
校验提示文案
beachboy7986
校验提示文案
张大妈迈迈迈
校验提示文案
马绍尔
校验提示文案
lhac
校验提示文案
马绍尔
校验提示文案
梅加雨
校验提示文案
项羽的爷爷
校验提示文案
xiandaoone
校验提示文案
潮SoSerious
校验提示文案
张老板儿啊
校验提示文案
潮SoSerious
校验提示文案
部川内酷
校验提示文案
AngelDean
校验提示文案
聚灵阵主
校验提示文案
心潮芃湃
校验提示文案
sevokk
校验提示文案
大耳朵张
校验提示文案
真大宝
校验提示文案
cctv凝
校验提示文案