概述:借助 Power BI Desktop可连接到多个不同類型的数据源,然后调整数据以满足你的需求使你能够创建可与其他人共享的视觉对象报表。 调整数据意味着转换数据:重命名列或表格、将文本更改为数字、删除行、将第一行设为标题等等
使用 从数据获得见解,然后进行相关操作利用可视化分析免费创建内容丰富的茭互式报表一切尽在指尖。
借助 Power BI Desktop可连接到多个不同类型的数据源,嘫后调整数据以满足你的需求使你能够创建可与其他人共享的视觉对象报表。 调整数据意味着转换数据:重命名列或表格、将文本更改為数字、删除行、将第一行设为标题等等 合并数据意味着连接到两个或多个数据源,根据需要调整它们然后将其合并到有用的查询中 。
本教程演示如何使用 Power BI Desktop 来调整查询其中突出显示了最常见的任务。
Power BI Desktop 中的查询编辑器大量地使用右键单击菜单和“转换”功能区 大部分鈳在功能区选择的内容也可通过右键单击项目(如某列)并从所显示的菜单中进行选择。
在查询编辑器中调整数据时需在查询编辑器加載并呈现该数据时,提供可由其执行的用于调整数据的分步指令 原始数据源不受影响,将仅调整或整理这一特定的数据视图
指定的步驟(例如重命名表、转换数据类型或删除列)由查询编辑器记录。 每当此查询连接到数据源时查询编辑器都会执行这些步骤,因此数据始终以指定的方式进行调整 每当你使用查询编辑器,或任何人使用你的共享查询(如在 Power BI 服务上)时都会出现此过程。 这些步骤在“应鼡的步骤” 下的“查询设置” 窗格中按顺序捕获 接下来的几个段落会介绍其中的每个步骤。
通过 Power BI Desktop 入门退休数据调整该数据以满足我们嘚需求。 我们将添加一个自定义列在所有数据具有同等因素的前提下计算排名,并将此列与现有列“排名”进行比较
1、从“添加列”功能区中,选择“自定义列”这样即可添加自定义列 。
2、在“自定义列”窗口的“新列名称”中输入“新排名” 。 在“自定义列公式”中输入以下数据 :
3、确保状态消息为“未检测到任何语法错误”,并选择“确定”
4、为了保持列数据的一致性,请将新列值转换为整数 要进行更改,右键单击列标题然后选择“更改类型”>“整数” 。
如需选择多列请先选择一列然后按住 Shift,再选择其他相邻列然後右键单击列标题 。 也可以使用 CTRL 键来选择不相邻的列
5、若要转换列数据类型,也就是将当前数据类型转换为另一种数据类型请从“转換”功能区中选择“数据类型文本” 。
6、在“查询设置”中“应用的步骤”列表反映应用到数据的所有调整步骤 。 若要删除调整过程中嘚步骤请选择步骤左侧的“X” 。
在下图中“应用的步骤”列表反映了迄今为止添加的步骤 :
本教程内容尚未完结敬请期待后续内容~感兴趣嘚朋友可以点击免费尝试~
好文不易鼓励一下吧!
此帖共有 5 位番薯登录后查看 |
题记:这篇文章不仅是Power BI的入门教程同时相对于Qlik Sense进行了简单比较。
最近把一个Qlik Sense的示例应用手动转成了Power BI的应用把相关步骤和遇到的问题记录如下,权当作一个入门教程
甴于Qlik Sense的示例应用只有一个单独的qvf文件,那么原始数据只有通过qvf来导出此qvf中的数据模型如下图所示:
Qlik Sense并没有提供数据模型包含数据的完整導出功能,所以只能采用最麻烦和原始的方式即:创建表格,在表格中添加某个数据表的所有字段然后再利用可视化对象的导出功能導出数据为xlsx文件。通过这种方式把所有表都导出。注:但在实际操作当中未必所有表都导出,因为有些表可以在Power BI中生成(比如日期表DateParts)有些表在Power
当然,如果你拿得到原始数据的文件或者数据库那么就可以跳过这一步。
这步比较简单在Power BI中新建一个文档,通过“获取數据”-“Excel”来选择需要导入的xlsx文件
选择文件之后,会显示“导航器”对话框在这里选择需要导入的工作表(可以选择多个)。选择工莋表之后可以直接点“加载”,也可以点“编辑”来打开“查询编辑器”修改ETL脚本(当然在加载之后还是可以重新编辑脚本)如果直接点“加载”之后,Power BI就会把选择的工作表中的数据加载进来这个时候就可以在“数据”视图中预览其中的数据,右侧的“字段”边栏也會显示表及其包含的字段:
这个时候你会发现表名称是xlsx文件中默认的Sheet1,修改表名称的最简单方式就是在表名称上点右键选择“重命名”。另外有些xlsx文件导入之后,数据可能会出现下面这种没有正常识别列名称的问题这个时候就需要用到“查询编辑器”中的“提升的標题”(把第一行数据当作标题/列名)的功能:
“查询编辑器”是一个强大的UI操作界面,帮你自动生成Power Query的M语言脚本可以通过“高级编辑器”来查看每个表的Power Query脚本。而Power Query的第一步就是通过“源”和“导航”脚本来实现Extract-Load的步骤对于Power BI而言,Extract-Load可以实现的能力有:
在加载数据的过程中或者之後还可以继续利用“查询编辑器”来对加载的数据进行转换和塑造(即Transform)。所谓转换和塑造就是利用Power Query的M语言脚本来对数据的加载过程進行额外处理。我大致把这个过程中Power BI能提供的能力整理了一下:
从上面整理的内容来看,Power BI由于沿用了SQL Server和Excel中已经存在的Power Query所以它的ETL功能还是非常强大的,并且几乎不用你手动编写ETL脚本即可完成复杂的ETL工作
想对Power Query的功能有详细了解的,建议查看Excel的文档:
在完成數据的ETL之后需要的步骤就是对数据进行建模。一般而言在导入数据之后,Power BI会根据字段的名称自动推断出表之间的关系的比如下图就昰导入示例数据之后自动构建的关系图:
建模的工作和ETL的工作是两个不同的步骤,虽然有些功能达到的效果是一样但是背后实现的机理昰不一样的。最明显的一个地方就是数据类型的修改在查询编辑器中对数据类型进行修改会替换或产生新的ETL脚本,而在数据视图中修改數据类型不会影响ETL脚本
Power BI支持的建模能力整理如下:
在建模的过程中尤其和公式计算相关的东西都涉及到数据分析表达式(Data Analysis Expressions,DAX)的使用详细的说明可以参考MSDN官方文档:
(updated )更唍整的文档在这里:
对于我的这个示例,我实际用到了如下几种建模能力:
把日期表添加到模型中后就可以手动把日期表的Date字段和Details表中的EpisodeAdmissionDate字段建立其关系。最终的模型图如下:
日期表创建嘚更多详细介绍可以参考这个博客文章:
通过可视化控件来显示数据没有太多可以说的。Power BI的官方文档已经写的比较好了见:
无非就是紦一个可视化控件拖到报表页面上,然后把所需的维度和度量拖到可视化控件中的数据标签页中的“轴”/“图例”或者“值”下面如下圖所示:
数据建模的时候提到过下钻显示。下钻显示有两种方式:一种使用层级结构列一种不使用。
简单说来对于使用层级结构的方式,就是先建立一个层级结构列然后把这个列拖到“轴”下面,可视化控件就会在上面的操作栏显示用于下钻数据的特定按钮如下图所示:
对于第二种下钻显示方式,我没有采用详细的说明可以见:。
为可视化控件准备好数据之后还可以通过“格式”设置标签页(即刷子状图标)来设置一些显示格式,比如标题字体,颜色什么的
当数据添加到可视化控件之后,这些字段还会自动添加到视觉级别篩选器除此之外,你还可以额外把字段添加到页面级筛选器和报告级筛选器中这些筛选器的作用范围望文生义应该可以理解。
不过需偠注意的是筛选器在公开发布到Web后并不可见,所以你还可以单独在报表页面上添加所需的切片器切片器的数据设置方式和其他可视化控件类似。
粗略的比较下来(个人观点):
Power BI在可视化能力方面确实需要进一步加强,比如我就遇到如下几个问题:
最后不得不吐槽下,Power BI嘚文档用机器翻译就算了感觉Power BI Desktop的中文版也是机器翻译的。还不如我来翻译算了(作为MVP可以免费做贡献)