商务智能基础(Power BI)

商务智能基础(Power BI)

Yiuhang Chan

商务智能

BI也叫商务智能,是一种主要由数据仓库、数据分析、查询报表、数据可视化等组成的数据类技术解决方案

商务智能BI可以实现业务流程和业务数据的规范化、流程化、标准化,打通ERP、OA、CRM等不同业务信息系统,整合纳企业数据,利用数据可视化满足企业不同人群对数据查询、分析和探索的需求,从而为管理和业务提供数据依据和决策支持。

将商业智能BI核心内容进行总结,大致有三大特征:

  1. 一套完整的由数据仓库、查询报表、数据分析等组成的数据类技术解决方案
  2. 将企业中不同系统(ERP、OA)中的数据打通并进行有效的整合:
  3. 利用合适的查询和分析工具快速准确地提供报表,为企业提供决策支持。

BI的由来

BI是信息化,数字化的增长,以及社会和商业对数据的依赖

BI的定义

一类由数据仓库(或数据集市)、查询报表、数据分析、数据挖掘、数据备份和恢复等部分组成的、以帮助企业决策为目的的技术及其应用。

Power BI 概念

Power BI是微软官方推出的可视化数据探索和交互式报告工具。

PowerBI是一款强大的可视化软件,它可以轻松的连接到数百个数据源,简化数据并可视化重要数据信息,生成美观的报表并进行发布,供组织在 Web和移动设备上使用。每个人都可创建个性化仪表板,获取针对其业务的全方位独特见解。简单来说就是可以从各种数据源中提取数据并对数据进行整理分析,然后生成精美的图表并且可以在电脑端和移动端与他人共享的一个神器。

Power BI 组成

  • Power BI 包括多个协同工作的元素,从以下三个基本元素开始:
  • Power BI Desktop (报表端) Wdinows 桌面应用程序 进行数据处理大屏可视化制作。
  • Power BI 服务(服务端)是一个包含软件服务、应用和连接器的集合。 Power BI 服务有时被称为 Power BI Online ,它是 Power BI 的服务型软件 (SaaS) 的部分,类似于一个网页,有了账号我们在Power BI Desktop 上做的就可以发布到我们的网页上去,相当于分了
    一块内存,你就可以在我的上面做一些发布,存储。然后就可以发布到浏览器上进行协同和交互。
  • Power BI 移动端 适用于Windows,ios和Android设备的

可视化效果(或视觉对象)是数据的可视化表示形式,如图表、颜色编码图,或其他可以创建并用来直观呈现数据的有趣形式。 Power BI 提供各种类型的可视化效果,而且随时会新增一些可视化效果。下图显示了在 Power BI 中创建的不同可视化效果的集合

Power BI 流程

连接到数据

要开始使用 Power BI Desktop,第一步为连接到数据。 可从 Power BI Desktop 连接到多个不同数据源。
连接到数据:在“开始”功能区,选择“获取数据”>“更多” 。
此时将显示“获取数据”窗口,其中显示了 Power BI Desktop 可连接到的多个类别。

转换和清理数据、创建模型

在 Power BI Desktop 中,可以使用内置 power query编辑器 清理并转换数据。 使用 Power Query 编辑器可以对数据进行更改,如更改数据类型、删除列或合并来自多个源的数据

创建视觉对象

拥有数据模型后,即可将字段拖动到报表画布上以创建视觉对象 。 视觉对象是模型中的数据的图形表示形式。 可以在 Power BI Desktop 中选择多个不同类型的视觉对象

创建报表

即创建视觉对象集合,这些视觉对象可显示已用于在 Power BI Desktop 中创建模型的数据的各个方面。 一个 Power BI Desktop 文件中的视觉对象集合称为“报表”。 报表可以有一个或多个页面组成。

Power BI 界面认识

界面认识

模块

主页:主要是获取数据

  • 报表:创建报表和视觉对象,大部分创建时间都花费在这里。
  • 数据:查看与报表关联的数据模型中使用的表、度量值和其他数据,并转换数据以便在报表的模型中充分利用。
  • 模型:查看和管理数据模型中各表之间的关系。

插入:主要是用于布局

建模:新建度量值,新建列,新建表是最常用的视

视图:图面美化

优化:字面理解

帮助:字面理解

数据查看

报表视图:可进行图表制作

表格视图:可以进行数据处理,表和表字段查看,新建列,新建度量值等操作。

模型视图:可以进行表之间的关联关系查看与连接。

数据来源
  1. 从Execl导入

    本地Execl数据导入

  2. 获取数据

    支持多源化数据导入,本地,web,sql等上百个数据源接入

矩阵表操作

  1. 数据导入

    点击加载:进入到数据可视化页面

    点击转换数据:进入到数据清洗页面(Power Query)

  2. 点击矩阵表添加

设置视觉对象格式

数据源:00

  1. 值:调节字体大小

  2. 列标题:默认会把列加大

  3. 行标题:默认会把行加大

  4. 搜索框:输入 + 显示开启或关闭+

  5. 搜索框:输入大小,调节正规边框的大小, 高最大为 720,宽最大为1260,

  6. 调节的是矩阵图的大小,内容不会随这图的大小而变化。

  7. 列小计: 每一列小计,默认是打开的

  8. 行小计:每一行小计,默认是打开的

  9. 列总计:与列小计一体的,列小计关闭默认也会关闭

  10. 行总计:与行小计一体的,行小计关闭默认也会关闭

  11. 隐藏行:筛选器里面进行筛选

  12. 隐藏列:筛选器里面进行筛选

  13. 数据条:美化

设置筛选

点击筛选器,点开需要筛选的视觉对象,即可筛选

运算符与新建列

认识运算符
新建列

数据源:01.02.04

新增列:英文的 ‘ 号 或 [ 都可以新增列进行计算 效果是相同的

新列 = '销售表'[销售数量]*10

新列2 = [销售数量]*10

实际操作

场景思考

什么时候用 ‘ 带表名 什么时候用[ 不带表名

一张表操作时可以不用带表名,多张表操作时要带上表名

举例说明

新建列的时候,当另一个需要计算的列来自其他表的时候,一定要指明表明是什么

计算销售成本

两个表之间的操作,先进行表与表之间的关联,在模型视图进行,拖动品名到销售表即可

关系函数 Related:从其他的表(关联表)中返回值

销售成本 = '销售表'[销售数量]*RELATED('商品表'[进价])

建模与关系函数

  1. 一对多关系
  2. 传递方向 向下筛选 向上索取
  3. 多端可以向一端索取,一端可以控制传递方向相同的多端数据
Lookupvalue函数:

语法:Lookupvalue(把那张表的那个列拿过来,找那张表上的谁?,找自己表里的谁?)把别人表里的字段V到自己表里

单价 = LOOKUPVALUE('商品表'[进价],'商品表'[品名],'销售表'[商品名称])

度量值

表工具里新建度量值

度量值在创建好之后可以在任意的环境中去使用。去执行不同的计算,也可以拖入图表。

新建度量值(计算一列的值)

销售总量 = SUM('销售表'[销售数量])

在报表视图使用任意图表如(卡片图)进行展示

聚合函数

数据源:超市销售明细表

求和:SUM(‘表’[字段])

销售额求和 = SUM('超市销售明细表'[销售额])

求平均:AVERAGE(‘表’[字段])

成本额平均值 = AVERAGE('超市销售明细表'[成本额])

最大值:MAX(‘表’[字段])

销售额最大值 = MAX('超市销售明细表'[销售额])

最小值:MIN(‘表’[字段])

销售额最小值 = MIN('超市销售明细表'[销售额])

记录数:Count(’表’)

记录数 = COUNTROWS('超市销售明细表')

去重计数:DISTINCTCOUNT(‘表’[字段])

去重计数 = DISTINCTCOUNT('超市销售明细表'[省份])

条件判断函数

数据源:12

销售成本 = '例1'[销售数量]*'例1'[单价]

text类型不能进行数值计算 会全部报错。

IFERROR 遇到错误时使用指定数值替换

销售金额 = IFERROR('例1'[销售数量] *'例1'[单价],BLANK())

BLANK()返回空

也可以返回数字,但无法返回字符串

销售金额 = IFERROR('例1'[销售数量] *'例1'[单价],123)

这样返回的就是123, 只能返回数值

if条件判断

简单的条件判断

称呼 = IF('Sheet1'[性别] ="男","先生","女生")

称呼 = IF('例2'[性别]="男","先生")
女士不写,返回也可以是空值,也可以输入数字。

复杂一点的if条件判断

间隔 = IF([取款日期]=BLANK(),BLANK(),[取款日期]-[存款日期])

如果 值 等于 什么 那么我们就返回 什么 返回。。。

switch多项条件判断

适用于多条件判断

1
2
3
4
5
6
7
8
SWITCH(
[Expression],
[Value1], [Result1],
[Value2], [Result2],
...
[ValueN], [ResultN],
[DefaultResult]
)
  1. Expression: 这是你将评估的表达式。通常情况下,这是一个列名称或者一个能够计算得到单一值的表达式。
  2. Value1, Value2, …, ValueN: 这些是你将会检查的值。这些值将会与 [Expression] 比较。
  3. Result1, Result2, …, ResultN: 对应于每个 Value,当 [Expression]Value 匹配时返回的结果。
  4. DefaultResult(可选): 如果没有任何 Value[Expression] 匹配,将返回此结果。如果省略此参数,且没有匹配项,SWITCH 将返回空值。

月份 = SWITCH('例3'[月],1,"一月",2,"二月",3,"三月",4,"四月",5,"五月",6,"六月",7,"七月",8,"八月",9,"九月",10,"十月",11,"十一月",12,"十二月","无法识别")

switch特殊用法

在 Power BI 的 SWITCH 函数中,使用 TRUE() 作为表达式可以让你基于一系列的条件判断来返回不同的结果。这种方法在需要基于多个不同列或更复杂的逻辑条件进行判断时非常有用。

1
2
3
4
5
6
7
8
SWITCH(
TRUE(),
[Condition1], [Result1],
[Condition2], [Result2],
...
[ConditionN], [ResultN],
[DefaultResult]
)

这里的每个 [ConditionN] 是一个返回布尔值(真或假)的表达式。如果该表达式的结果为真(TRUE),则 SWITCH 函数将返回对应的 [ResultN]

年龄段 = SWITCH(TRUE(),'例4'[年龄]<30,"30岁以下",'例4'[年龄]<40,"30-40岁",'例4'[年龄]<50,"40-50岁","50岁以上")

  • 标题: 商务智能基础(Power BI)
  • 作者: Yiuhang Chan
  • 创建于 : 2020-09-15 20:21:39
  • 更新于 : 2024-02-28 18:50:05
  • 链接: https://www.yiuhangblog.com/2020/09/15/20200915PowerBI基础/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论