1.2 Power BI简介
Power BI是一个完整的数据分析和报表创建软件,其全称为Power Business Intelligence, Business Intelligence意为“商业智能”。
商业智能是指从许多不同的系统中获取企业及其所在行业的数据,再对数据进行清洗以保证其正确性,经过抽取和转换将数据加载到企业级数据库里;之后用查询分析和数据挖掘等工具对数据库里的数据进行分析和处理,从中挖掘出有用的信息与知识,向管理者提供决策建议,以达到增加企业利润、提升企业竞争力的目的。
传统的商业智能通常由企业中专门从事数据分析的技术人员完成。随着数据量不断增加,数据分析的成本也不断增加,仅仅依靠专业数据分析人员做数据处理和分析已不能满足企业发展的需要,因此自助式商业智能软件便应运而生。微软公司开发的Power BI便是一款自助式商业智能软件。
Power BI的前身是Excel。2010年微软公司推出了Excel 2010,同期推出了一个名为Power Pivot的插件。用户可免费下载Power Pivot插件并加载到Excel 2010中使用。2013年微软公司在推出Excel 2013时又推出了Power Query、Power View和Power Map插件供用户免费下载并加载到 Excel 中使用。这些插件极大地扩展了 Excel 在数据处理、数据分析和数据呈现方面的功能,使 Excel 从一个传统的电子表格处理软件变为商业智能软件。此后微软公司将上述4个插件整合在一起,于2015年正式推出了Power BI Desktop。Excel 2016和Excel 2019推出时,Power Query、Power Pivot、Power View和Power Map已预先安装到Excel里,用户不需要再下载和安装插件,只要在加载项里激活这些插件便可以在Excel里直接使用。
与其他数据分析和报表创建软件相比,Power BI具有以下优势。
(1)可连接数十个数据源以导入数据并使这些数据具有正确的格式。数据源包括 Excel工作簿、文本文件、JSON文件、Access数据库、SQL Server数据库等。
(2)可快速对数据进行清洗和整理。
(3)可通过建立数据模型使数据之间具有关联关系,以实现数据的统计和分析。
(4)可用数据分析的结果制作丰富的视觉对象并发布到云服务器。用户登录Power BI云服务账户后便可在网页上浏览报表并与其他用户互动,用户还可以用手机等移动设备浏览报表。
(5)可导出PPT等格式的文档。
(6)Power BI Desktop每月都会更新,每次更新时会解决之前版本中存在的问题,改进已有功能并增加新的功能。
1.2.1 Power BI的基本构成
Power BI包括本地桌面版(Power BI Desktop)、网页服务版(Power BI Service)和移动版(Power BI App)。
Power BI Desktop是在本地计算机中运行的数据分析和报表创建软件,擅长处理数据及创建报表,主要用于对原始数据进行清洗和整理、建立数据表之间的关系、建立可视化报表、将报表发布到Power BI Service。
Power BI Service是基于云服务的SaaS(Software as a Service,软件即服务),提供数据共享和协作功能,其用户之间可以协作或互动(如分享报表和仪表板、评论、制作书签等)。没有Power BI Pro许可证的用户登录Power BI Service账户后只能访问“我的工作区”;拥有Power BI Pro许可证的用户登录Power BI Service账户后可访问所有内容,并可与他人协作或互动。
Power BI App是一款在iOS或Android平台的手机或平板电脑里运行的免费软件,用户运行该软件并登录Power BI账户后,在“我的工作区”中可查看报表和仪表板。
Power BI Desktop和Power BI Service的功能如表1-1所示。
表1-1 Power BI Desktop和Power BI Service功能一览表
使用Power BI的一般流程(见图1-2):在Power BI Desktop中导入、分析和处理数据,创建报表并将报表发布到Power BI Service;在Power BI Service中共享报表,再创建并共享仪表板;在Power BI App中浏览报表和仪表板。
图1-2 Power BI数据分析一般流程
用户具体使用Power BI的哪一部分是由其角色决定的。以一个企业为例,数据分析师通常用办公室计算机中安装的Power BI Desktop从多种数据源中获取与企业有关的各类数据,再对数据进行处理和分析,用分析结果制作视觉效果丰富的报表,并将报表发布到Power BI Service;管理者及一线员工通常使用办公室计算机中安装的浏览器登录Power BI账户查看数据分析师发布的报表、制作仪表板、与他人互动等;销售员则主要使用手机上的Power BI App登录Power BI账户,然后浏览Power BI Service中的报表和仪表板,随时了解企业产品的销售进度等业务状况。如果某个员工同时扮演了多个角色,那么他会在不同的时间段使用Power BI的不同部分。
微软公司为Power BI用户提供了以下3种授权服务。
(1)Power BI Free(免费)。任何人只要注册Power BI Free账户就可使用Power BI Desktop和Power BI App,还可以登录Power BI Service。Power BI Free的用户除了不能在Power BI Service里将报表和仪表板分享给其他Power BI用户外,可使用Power BI的其他所有功能。
(2)Power BI Pro(收费)。微软公司每月收取每个Power BI Pro账户一定的费用(目前可免费试用60天)。Power BI Pro的用户除了能使用Power BI的所有功能外,还可以在Power BI Service上将报表和仪表板分享给其他Power BI Pro用户。
(3)Power BI Premium(收费)。这类账户除了具有Power BI Pro的所有功能外,还享受一些额外服务,用户付费后以套餐形式得到服务。
用户通过以上3种授权服务可以无差别地使用Power BI Desktop和Power BI App,它们的不同之处主要体现在Power BI Service的使用上,如表1-2所示。
表1-2 Power BI 3种授权服务的功能
续表
下面简要介绍Power BI中的几类对象。
1.数据集(Dataset)
数据集是指在Power BI中做数据处理和分析,以及在报表或仪表板上创建视觉对象时的数据集合。数据集来自数据源,Power BI支持的数据源包括文件、Web网页、数据库等多种类型。
2.视觉对象(Visual)
视觉对象是指在报表或仪表板上呈现数据时使用的可视化表现形式(图表、图形、表格、地图等)。图 1-3是Power BI Desktop预安装的视觉对象。
图1-3 Power BI Desktop预安装的视觉对象
Power BI不仅提供了丰富的视觉对象,还经常更新和增加视觉对象。用户除了可以使用Power BI预安装的视觉对象外,还可以从微软应用商店或文件中导入自定义视觉对象到Power BI中使用。
3.报表(Report)
报表是各种视觉对象的集合。一个报表可以包含一个页面或多个页面,每个页面都可以包含多个不同类型的视觉对象。例如,图1-4所示的报表包含了两个页面,当前显示的是其中一个页面,该页面有7个视觉对象,另一个页面也包含了若干个视觉对象。
创建报表时使用的数据通常来自一个数据集中的多个数据表,一个数据集也可用于创建多个报表。报表既可以在Power BI Desktop中创建,也可以在Power BI Service中创建,但不能在Power BI App中创建。
4.仪表板(Dashboard)
仪表板与报表类似,也包含了各种类型的视觉对象(见图1-5)。仪表板与报表的不同之处主要有以下几点。
(1)仪表板只能在Power BI Service中创建并分享。在Power BI Desktop和Power BI App中都不能创建仪表板。
(2)一个报表可以有多个页面,一个仪表板只有一个页面。
图1-4 在Power BI Desktop中制作的报表
图1-5 在Power BI Service中制作的仪表板
(3)可以从一个报表的同一个页面或不同页面中选择若干个视觉对象放在一个仪表板上,也可以从不同报表中选择若干个视觉对象放在一个仪表板上。
1.2.2 数据处理组件Power Query
Power Query主要用于获取数据和整理数据。Power Query具有强大的获取外部数据并对数据做预处理的能力,能为后续用Power Pivot做数据分析及用Power View做数据可视化做好准备。
Power Query具有以下功能和特点。
(1)可从多种外部数据源中导入数据并把数据保存到数据表。以数据表为单位对数据做各种处理。数据源可以是Excel工作簿、文本文件、网页、各类数据库等。
(2)可完成对数据表中数据的清洗和整理工作。例如,删除无用列,删除包含错误数据的整行数据,删除空行,隔行删除,保留指定行并删除其他行,删除重复项;移动列;快速替换数据,替换错误数据,用相邻单元格中的数据填充空白单元格;排序、筛选、分类汇总数据;将数据表转置(转换行列),反转行;将一列拆分为多列;将多列合并为一列;提取文本;透视和逆透视等。
(3)可添加各种新的数据列。例如,重复列、条件列(通过设置条件得到新列及其中的数据)、索引列、度量列(通过设置公式得到新列及其中的数据)等。
(4)可将多个数据表汇总到一个表中。例如,若两个数据表包含相同的列名,则可用“合并查询”通过单列匹配或多列匹配将一个数据表中指定列的数据添加到另一个数据表中(类似于Excel中VLOOKUP函数的功能,但合并查询操作比VLOOKUP函数更加简单、方便)。如果两个数据表具有相同的列数和列名,则可用“追加查询”将一个表中所有行的数据添加到另一个表的下方。
(5)分析列可发现并处理导入的数据中可能存在的质量问题。例如,用“列质量”检测数据表中的有效值、错误值和空值,并在含有错误值或空值的列上显示醒目标识以提醒用户;用户可选择对检测出的错误值和空值的处理方式(如删除包含错误值或空值的所有行)。
(6)可用M语言完成复杂的数据处理工作。
传统的Excel也有数据处理功能。与Excel相比Power Query的优势在于:①处理的数据量更大;②能自动记录用户的每一步操作,便于用户直观地了解对现有数据源已经做过的操作并随时调整或改变之前做过的某些操作;③如果更改了数据源,则用户不需要手动做重复的操作,Power Query 会自动将所记录的操作应用于新的数据源,从而大大提高工作效率;④增加了一些Excel没有的操作和一些Excel虽然有但实现起来很烦琐的操作。
1.2.3 数据分析组件Power Pivot
Power Pivot主要用于完成数据建模和数据分析工作,是Power BI的“灵魂”。使用过Excel的用户都知道Excel可以建立数据透视表(Pivot Table)。从Power Pivot这个名称就可以看出它是Pivot Table的加强版。
Power Pivot具有以下功能和特点。
(1)以数据模型为单位做数据分析。可将Power Query生成的查询表作为数据模型,也可从多种数据源中导入数据并将数据保存到数据模型。
(2)可在各个数据模型之间建立关系,生成多维的数据模型。
(3)对数据模型中的行数没有限制,可以处理几百万行,甚至上千万行的数据。
(4)用DAX函数可完成普通数据透视表无法完成的数据处理和分析任务。DAX函数与Excel函数在语法上有相似之处。
1.2.4 数据可视化组件Power View
Power View主要用于完成数据可视化工作。用Power View可以建立图表、图形、地图等视觉对象来呈现数据,并且可将多个视觉对象组织在一个报表中。Power View中用于实现数据可视化的图表包括饼图、柱形图、条形图、折线图、散点图和气泡图等。一个图表可以包含多个数值字段和多个系列。设计图表时,可以选择显示或隐藏标签、图例和标题。用Power View建立的图表是交互式图表,当用户浏览报表时,若单击图表中的某个图形元素,则该元素对应的数值会突出显示。
1.2.5 Power BI与其他软件的集成
Excel 2016、Excel 2019已包含了Power BI的四大组件(Power Query、Power Pivot、Power View、Power Map)。在Excel 2016、Excel 2019主界面的功能区的“数据”选项卡里已包含Power Query按钮,但在Excel 2016、Excel 2019主界面中默认不显示Power Pivot、Power View和Power Map按钮。用户如需使用这3个组件,则需要手动将其对应的按钮加载到主界面的功能区里。手动添加Power Pivot、Power View和Power Map按钮到Excel 2016、Excel 2019主界面的步骤如下:打开Excel 2016(Excel 2019),选择“文件”菜单中的“选项”选项,单击左侧列表中的“加载项”选项,出现图1-6所示的界面,在底部的“管理”下拉列表中选择“COM加载项”选项,单击“转到”按钮,出现图1-7所示的“COM加载项”对话框,勾选其中需要加载的组件名称(如勾选“Microsoft Power Pivot for Excel”复选框),单击“确定”按钮,Excel主界面的功能区中会出现图1-8所示的组件选项卡。
图1-6 “Excel选项”对话框
图1-7 “COM加载项”对话框
图1-8 加载Power Pivot组件后的Excel主界面
早期的Excel版本(如Excel 2010、Excel 2013等)未集成上述的Power BI组件。如果用户仍在使用这些版本的Excel并想使用上述的Power BI组件,则需从微软公司官网下载并加载对应插件到Excel中。
下面以Excel 2010为例介绍下载并加载Power Pivot for Excel插件的操作步骤。
在浏览器地址栏中输入Power Pivot for Excel官网下载地址并按Enter键,出现图1-9所示的页面,选择语言并单击“下载”按钮,出现图1-10所示的页面,根据本地计算机已安装的Excel版本选择下载程序。
图1-9 选择语言
图1-10 选择下载版本
如果本地计算机安装的Excel是32位的,则勾选“CHS\x86\PowerPivot_for_Excel_x86.msi”复选框,如果是64位的,则勾选“CHS\amd64\PowerPivot_for_Excel_amd64.msi”复选框,之后单击“Next”按钮开始下载。
若不清楚计算机中已安装的Excel版本是32位的还是64位的,则可打开Excel并在“文件”菜单中选择“帮助”选项,在图1-11所示的界面中查看Excel版本信息。
插件下载完成后,在本地计算机中运行Power Pivot插件安装程序(例如,如果Excel是64位的,则运行PowerPivot_for_Excel_amd64.msi),按照安装向导的指示完成每步操作。
图1-11 Excel版本信息
打开Excel 2010,选择“文件”菜单中的“选项”选项,单击左侧列表中的“加载项”选项,出现图1-6所示的对话框,在底部的“管理”下拉列表中选择“COM加载项”选项,单击“转到”按钮,出现图1-12所示的“COM加载项”对话框,勾选“PowePivot for Excel”复选框,单击“确定”按钮完成Power Pivot组件的加载。
图1-12 安装Power Pivot for Excel