用Power BI Desktop分析来自Excel和OData源的销售数据(上)
使用 Power BI Desktop 从数据获得见解,然后进行相关操作利用可视化分析免费创建内容丰富的交互式报表,一切尽在指尖。
拥有多个数据源的数据是很常见的。例如,可以拥有两个数据库,一个用于产品信息,另一个用于销售信息。使用 Power BI Desktop ,可以合并来自不同源的数据,以创建令人感兴趣的、引人注目的数据分析和可视化效果。
本教程中将合并来自两个数据源的数据:
- 包含产品信息的 Excel 工作簿
- 包含订单数据 OData 源
提示:在 Power BI Desktop 中,有若干种完成任务的方法。例如,可以右键单击某个列或单元格,或使用其上的“更多选项”菜单查看其他功能区选择 。以下步骤描述了几种备用方法。(点击此处可查看下篇)
导入 Excel 产品数据
首先,将 Products.xlsx Excel 工作簿中的产品数据导入 Power BI Desktop。
- 下载 Products.xlsx Excel 工作簿,并将其保存为 Products.xlsx 。
- 选择 Power BI Desktop 功能区的“主页”选项卡中的“获取数据”旁的箭头,然后从“最常见的”菜单选择“Excel” 。
提示:你还可以选择“获取数据” 项本身,或者从 Power BI“开始”对话框中选择“获取数据” ,再在“获取数据”对话框中选择“Excel” 或“文件” > “Excel” ,然后选择“连接” 。
- 在“打开” 对话框中,导航到 Products.xlsx 文件并选择 该文件,然后选择“打开” 。
- 在“导航器” 中,选择“产品” 表,然后选择“转换数据” 。
- 表预览将在“Power Query 编辑器”中打开,你可以在其中应用转换以清理数据。
提示:你也可以通过以下方法打开 Power Query 编辑器:从 Power BI Desktop 中的“主页” 功能区选择“编辑查询” > “编辑查询” ,或者右键单击或选择“报表” 视图中任何查询旁的“更多选项” ,然后选择“编辑查询”
清理产品列
- 合并的报表将使用 Excel 工作簿中的“ProductID”、“ProductName”、“QuantityPerUnit”和“UnitsInStock”列 。 可以删除其他列。
- 在“Power Query 编辑器”中,选择“ProductID” 、“ProductName” 、“QuantityPerUnit” 和“UnitsInStock” 列。 可以使用 Ctrl 选择多个列,或使用 Shift 选择彼此相邻的列。
- 右键单击任意所选标头。 从下拉菜单中选择“删除其他列” 。 你还可以从“主页” 功能区选项卡中的“管理列” 组中选择“删除列” > “删除其他列” 。
导入 OData 源的订单数据
接下来,从示例 Northwind 销售系统 OData 源导入订单数据。
- 在“Power Query 编辑器”中,选择“新建源”,然后从“最常见的”菜单中选择“OData 源” 。
- 在“OData 源”对话框中,粘贴 Northwind OData 源 URL //services.odata.org/V3/Northwind/Northwind.svc/ 。 选择“确定”。
- 在“导航器” 中,选择“订单” 表,然后选择“转换数据” 将数据加载到 Power Query 编辑器。
提示:在导航器中 ,选择任何表名称即可查看预览,而不必选中复选框。
展开订单数据
在连接到具有多个表的数据源(例如,关系数据库或 Northwind OData 源)时,可以使用表引用来构建查询。 “订单” 表包含对多个相关表的引用。 使用展开操作,可以将相关相关“Order_Details” 表中的“ProductID” 、“UnitPrice” 和“数量” 列添加到主题(“订单” )表。
- 在“订单”表中向右滚动,直到看到“Order_Details”列 。 它包含对另一个表的引用,而不是数据。
- 选择“Order_Details” 列标题中的“展开” 图标(展开图标)。
- 选择 (选择所有列) 以清除所有列。
- 选择“ProductID” 、“UnitPrice” 和“数量” ,然后选择“确定” 。
- 展开“Order_Details”表后,会有三个新的嵌套表列替换“Order_Details”列 。表中有新行用于放置每个订单的新增数据。
创建自定义的计算列
Power Query 编辑器可以用来创建计算和自定义字段以丰富你的数据。你将创建自定义列,该列将单价乘以商品数量,以计算每个订单的行项的总价格。
- 在 Power Query 编辑器的“添加列”功能区选项卡中,选择“自定义列” 。
- 在“自定义列” 对话框中,在“新列名”字段中键入“LineTotal” 。
- 在 = 后的“自定义列公式”字段中,输入 [Order_Details.UnitPrice] *[Order_Details.Quantity] 。 你还可以从“可用列” 滚动框中选择字段名称,然后选择“<< 插入” ,而不是键入它们。
- 选择“确定”。
- 新“LineTotal” 字段显示为“订单”表中的最后一列 。
设置新字段的数据类型
Power Query 编辑器连接数据时,出于显示目的,它会猜测每个字段的数据类型。 标题图标指示分配给每个字段的数据类型。 还可以在“主页”功能区选项卡的“转换”组中查看“数据类型” 。
- 新“LineTotal”列的数据类型为“任意”,但它具有货币值 。 要分配数据类型,请右键单击“LineTotal”列标题,从下拉菜单中选择“更改类型”,然后选择“定点十进制数” 。
提示:你还可以选择“LineTotal” 列,选择“主页”功能区选项卡的“转换”区域中“数据类型”旁的箭头 ,然后选择“定点十进制数” 。
由于内容过多,本次内容分为上下篇发布。点击查看下篇>>
想要购买Power BI Desktop正版授权,或了解更多产品信息请点击
关注慧聚IT微信公众号 ???,了解产品的最新动态及最新资讯。