Power BI 是微軟推出的數(shù)據(jù)分析和可視化工具
PowerBI繪圖一般分為三個(gè)步驟:選擇可視化圖表,圖標(biāo)字段選擇,圖標(biāo)格式設(shè)計(jì)。
power Query:pq? 超級(jí)查詢,
power? pivot? PP 就是超級(jí)透視
powerbi操作:
二維表轉(zhuǎn)化為一維表:
透視:一維表轉(zhuǎn)二維表。
逆透視:二維表轉(zhuǎn)化為一維表。
? ??????????????????????PowerQuery 常用的數(shù)據(jù)清洗十三招
1.提升標(biāo)題
在 Excel 中第一行為標(biāo)題行,從第二行開始才是數(shù)據(jù),但在 PQ 中,從第一行開始就需要是數(shù)據(jù)記錄,標(biāo)題在數(shù)據(jù)之上
2.更改數(shù)據(jù)類型
兩種更改數(shù)據(jù)類型的方式。
3.刪除空值/錯(cuò)誤
4刪除重復(fù)值
5.填充
在 Excel 數(shù)據(jù)中經(jīng)常會(huì)見到合并單元格的情況,導(dǎo)入后就變成了空值
6.合并列
需要選取列數(shù)大于1,可選取分隔符
7.拆分列
拆分相當(dāng)于是合并列的反動(dòng)作,不過功能更豐富,可以選著按字符數(shù),也可以選擇按分隔符,如果列中包含多個(gè)分隔符,還可以選擇按哪個(gè)位置的分隔符來拆分:
8分組
9.提取
PQ 的提取功能可以按照長(zhǎng)度、首字符、尾字符、范圍等來提取,比如下面這個(gè)例子,提取前2 個(gè)字符
10.行列轉(zhuǎn)置
11.行列操作
12逆透視列
這是 PQ 非常便捷的逆天功能,由于數(shù)據(jù)分析的需要,我們經(jīng)常要將二維表變?yōu)橐痪S表,之前在Excel 中需要很多操作步驟才能完成,而通過逆透視功能,可以一鍵降為一維表
13透視列
做分析需要一維表,而為了展現(xiàn)的需要,常常還要把一維表變成二維表,也就是 Excel 中的數(shù)據(jù)透視,在PQ 中同樣可以一鍵透視,比如把剛才的一維表變成原樣,聚合方式選擇‘不要聚合”。
????????????????????????????????????????????????數(shù)據(jù)豐富
加入新列、新行,或者從其他表中添加進(jìn)來更多維度的數(shù)據(jù)
1添加列
四種形式,重復(fù)列、索引列、條件列、自定義列:
2.追加查詢 多表行
追加查詢是在現(xiàn)有記錄的基礎(chǔ)上,在下邊添加新的行數(shù)據(jù), 是一種縱向合并,比如有兩個(gè)表格式相同,需要合并為一個(gè)表,點(diǎn)擊“追加查詢”,
3.合并查詢 多表列 相當(dāng)于vlookup函數(shù)。
? ??????????????????????????????????????M函數(shù)
1.M函數(shù)的基本規(guī)范:
? M 函數(shù)對(duì)大小寫敏感,每一個(gè)字母必須按函數(shù)規(guī)范書寫,第一個(gè)字母都是大寫
? 表被稱為 Table,每行的內(nèi)容是一個(gè) Record,每列的內(nèi)容是一個(gè) List
? 行標(biāo)用大括號(hào){ },比如取第一行的內(nèi)容: =表{0} //PQ 的第一行從 0 開始
? 列標(biāo)用中括號(hào)[ ],比如取自定義列的內(nèi)容: =表[自定義]
? 取第一行自定義列的內(nèi)容: =表{0}[自定義]
2.常用M函數(shù):
聚合函數(shù):
求和: List.Sum()
求最小值: List.Min()
求最大值: List.Max()
求平均值: List.Average()
文本函數(shù):
求文本長(zhǎng)度: Text.Length()
去文本空格: Text.Trim()
取前 n 個(gè)字符: Text.Start(文本,n)
取后 n 個(gè)字符: Text.End(文本,n)
提取數(shù)據(jù)函數(shù):
從 Excel 表中提取數(shù)據(jù): Excel.Workbook()
從 Csv/Txt 中提取數(shù)據(jù): Csv.Document()
條件函數(shù):
if else then (相當(dāng)于 Excel 中的 IF)
3.從哪里查找 M 函數(shù)
新建一個(gè)空查詢,在公式標(biāo)記欄中輸入#shared,就把所有的 M 函數(shù)顯示出來了
????????????????????????????????????數(shù)據(jù)建模
1.定義:
Power BI 可以從多個(gè)表格、多種來源的數(shù)據(jù)中,根據(jù)不同的維度、不同
的邏輯來聚合分析數(shù)據(jù);而提取數(shù)據(jù)的前提是要將這些數(shù)據(jù)表建立關(guān)系,這個(gè)建立關(guān)系的
過程就是數(shù)據(jù)建模。
2.基數(shù)
? 基數(shù)就是兩個(gè)連接字段的對(duì)應(yīng)關(guān)系,分為多對(duì)一、一對(duì)一和一對(duì)多,一對(duì)多和多對(duì)一
其實(shí)是一樣的,實(shí)際上就是兩種關(guān)系:
? 多對(duì)一(*: 1):這是最常見的類型,代表一個(gè)表中的關(guān)系列有重復(fù)值,而在另一個(gè)表
中是單一值
? 一對(duì)一(1: 1):兩個(gè)表是一對(duì)一的關(guān)系,列中的每個(gè)值在兩個(gè)表中都是唯一的
? 具有唯一值的表通常稱為“查找表”,而具有多個(gè)值的表稱為“引用表”。在上述的關(guān)系圖
上,產(chǎn)品明細(xì)表上類別手機(jī)、平板、電腦都不是唯一的,每個(gè)品牌都有這種類型,是
個(gè)引用表;但類別表上,幾種類別都是唯一值,因此這兩個(gè)表是多對(duì)一的關(guān)系,類別
表也就是查找表
3.交叉篩選方向
表示數(shù)據(jù)篩選的流向,有兩種類型:
? 雙向:兩個(gè)表可以互相篩選
? 單向:一個(gè)表只能對(duì)另一個(gè)表篩選,而不能反向
4.DAX
創(chuàng)建度量值的公式稱為 DAX 公式
????????????????????????????????????????度量值
1.定義
度量值是用 DAX 公式創(chuàng)建一個(gè)虛擬字段的數(shù)據(jù)值,她不改變?cè)磾?shù)據(jù),也不改變
數(shù)據(jù)模型。
2.度量值特征
? ? ? ? 1上下文
度量值的最重要的特征: 上下文,上下文就是度量值所處的環(huán)境,篩選表的行列標(biāo)簽、切片器的選中,都是度量值的上下
文,比如北京
2017 年截至 5 月的蘋果手機(jī)累計(jì)銷售額 3424000,它的上下文就是下面這 5
個(gè)維度:
[城市]="北京市"
[品牌]="蘋果"
[類別]="手機(jī)"
[年度]=2017
[月份]=5 月
? ? ? ? ? ?2度量值不浪費(fèi)內(nèi)存,只有被拖到圖表上才執(zhí)行運(yùn)算,如果數(shù)據(jù)量非常大的時(shí)候這點(diǎn)非
常有利
? ? ? ? ? ? 3度量值可以循環(huán)使用,比如上面的建立的度量值:
? ??????????????????????????????????????????????DAX
DAX:data analysis expression
DAX的主要功能正是查詢和運(yùn)算, DAX 查詢函數(shù)負(fù)責(zé)篩選出有用的數(shù)據(jù)集合,然后利用 DAX 的
聚合函數(shù)執(zhí)行計(jì)算
上下文:
外部上下文:外部可以看得見的篩選:標(biāo)簽和切片器,
內(nèi)部上下文:創(chuàng)建度量值的 DAX 公式,它的查詢篩選函數(shù)可以擴(kuò)大、限制或者重置外部上下文
DAX的使用范圍:
DAX除了可以創(chuàng)建度量值。還可以新建列(占用內(nèi)存)。
DAX參數(shù)的基本格式:
表名用單引號(hào)' '括著 // '日期表'
字段用中括號(hào)[ ]括著 //[日期]
度量值也是用中括號(hào)[ ]
引用字段始終要包含表名,以和度量值區(qū)分開
DAX 常用函數(shù)
聚合函數(shù):
SUM 求和
AVERAGE 平均
MIN 最小
MAX? 最大
COUNT:計(jì)數(shù)
?COUNTROWS:計(jì)算行數(shù)
DISTINCTCOUNT:計(jì)算不重復(fù)值的個(gè)數(shù)
函數(shù)后面加x,可以循環(huán)訪問表的每一行,并執(zhí)行計(jì)算,所以也被稱為迭代函數(shù)
SUMX
AVERAGEX
MINX
MAXX
RANKX
時(shí)間智能函數(shù)
PREVIOUSYEAR/Q/M/D:上一年/季/月/日
NEXTYEAR/Q/M/D:下一年/季/月/日
?TOTALYTD/QTD/MTD:年/季/月初至今
?SAMEPERIODLASTYEAR:上年同期
PARALLELPERIOD:上一期
?DATESINPERIOD:指定期間的日期
篩選函數(shù)
FILTER:篩選,F(xiàn)ILTER 函數(shù)返回的表,所以它不能單獨(dú)用于建度量值
?ALL:所有值,可以清除篩選
ALLEXCEPT:保留指定列
VALUES:返回不重復(fù)值
CALCULATE:
CALCULATE(<expression>,<filter1>,<filter2>…)
第一個(gè)參數(shù)是計(jì)算表達(dá)式,可以執(zhí)行各種聚合運(yùn)算
從第二個(gè)參數(shù)開始,是一系列篩選條件,可以為空;如果多個(gè)篩選條件,用逗號(hào)分隔
所有曬選條件的交集形成最終的篩選數(shù)據(jù)集合
根據(jù)篩選出的數(shù)據(jù)集合執(zhí)行第一個(gè)參數(shù)的聚合運(yùn)算并返回運(yùn)算結(jié)果
calculate 可以直接引用創(chuàng)建好的度量值。
添加限制條件,縮小上下文:
結(jié)合 ALL 函數(shù),擴(kuò)大上下文:
ALL('產(chǎn)品明細(xì)')的意思是清除產(chǎn)品明細(xì)表里的所有篩選,外部篩選器不起作用了,每行統(tǒng)計(jì)的都是該表中的所有產(chǎn)品。
重置上下文:
FILTER 函數(shù)
?第一個(gè)參數(shù)<table>是要篩選的表
第二個(gè)參數(shù)<filter>是篩選條件
返回的是一張表,不能單獨(dú)使用,需要與其他函數(shù)結(jié)合使用
產(chǎn)品數(shù)量2 = calculate([產(chǎn)品數(shù)量],'產(chǎn)品明細(xì)表'[品牌]="蘋果")
等同于:
產(chǎn)品數(shù)量2 =?calculate([產(chǎn)品數(shù)量],FILTER(ALL('產(chǎn)品明細(xì)表'[品牌]),'產(chǎn)品明細(xì)表'[品牌]="蘋果"))
常用格式:calculate(...,FILTER(ALL(..),....))
HASONEVALUE 和 SUMX 函數(shù)
1.HASONEVALUE(列名),是個(gè)邏輯判斷函數(shù),如果有單一值,返回 ture,否則返回 false
判斷外部上下文中是否為該列中的唯一值,做切片器交互時(shí)十分有用
2.SUMX(表,表中每一行計(jì)算的表達(dá)式)
逐行計(jì)算,占用內(nèi)存,數(shù)據(jù)量過大時(shí)
EARLIER函數(shù)
操作行中對(duì)應(yīng)參數(shù)列的操作。
powerbi? 可視化
1.堆積圖:
不同的序列在一根柱子上顯示
可以直接比較總量的大小
分類序列的數(shù)值比較功能弱化
2.簇狀柱形圖的特征:
? 不同序列使用不同的柱子
? 可以比較各序列的數(shù)值大小
? 總量比較功能弱化
3.百分比堆積柱形圖的特征:
? 與堆積柱形圖類似,不同序列在一根柱子上顯示
? 顯示各序列的相對(duì)大小, Y 軸標(biāo)簽變?yōu)榘俜直?/p>
? 無(wú)法比較總量,每根柱子都一樣高
柱形圖格式設(shè)置:
4.單層樹狀圖
5.雙層樹狀圖
在詳情信息中添加字段。
樹狀圖的使用場(chǎng)景
? 要顯示大量的分層數(shù)據(jù)
? 條形圖不能有效地處理大量值
? 要顯示每個(gè)部分與整體之間的比例
? 要顯示層次結(jié)構(gòu)中指標(biāo)在各個(gè)類別層次的分布的模式
? 要使用大小和顏色編碼顯示屬性
? 要發(fā)現(xiàn)模式、離群值、最重要因素和異常
6.氣泡地圖-Bubble Map
7著色地圖-Filled Map
8.ArcGIS 地圖
PowerBI 常用操作
1.查看圖表的三種方式:
選中圖表,點(diǎn)擊上方【數(shù)據(jù)/鉆取】選項(xiàng)卡“查看數(shù)據(jù)”
選中圖表,然后點(diǎn)擊右上角三個(gè)點(diǎn),選擇“顯示數(shù)據(jù)”
在圖表上單擊右鍵,選擇“查看數(shù)據(jù)”
2.圖表鉆取2種。
通過圖表右上角的向下箭頭“啟用深化”。
使用頂部 Power BI“數(shù)據(jù)/鉆取”選項(xiàng)卡。
3.編輯交互
如果需要響應(yīng)該篩選,則選擇“篩選”圖標(biāo)
如果不希望被篩選,則選擇“不起作用”圖標(biāo)