Power BI 是微軟推出的數(shù)據(jù)分析和可視化工具
PowerBI繪圖一般分為三個步驟:選擇可視化圖表熬拒,圖標字段選擇非春,圖標格式設計。
power Query:pq? 超級查詢雹食,
power? pivot? PP 就是超級透視
powerbi操作:
二維表轉(zhuǎn)化為一維表:
透視:一維表轉(zhuǎn)二維表哩都。
逆透視:二維表轉(zhuǎn)化為一維表。
? ??????????????????????PowerQuery 常用的數(shù)據(jù)清洗十三招
1.提升標題
在 Excel 中第一行為標題行婉徘,從第二行開始才是數(shù)據(jù)漠嵌,但在 PQ 中,從第一行開始就需要是數(shù)據(jù)記錄盖呼,標題在數(shù)據(jù)之上
2.更改數(shù)據(jù)類型
兩種更改數(shù)據(jù)類型的方式儒鹿。
3.刪除空值/錯誤
4刪除重復值
5.填充
在 Excel 數(shù)據(jù)中經(jīng)常會見到合并單元格的情況,導入后就變成了空值
6.合并列
需要選取列數(shù)大于1几晤,可選取分隔符
7.拆分列
拆分相當于是合并列的反動作约炎,不過功能更豐富,可以選著按字符數(shù)蟹瘾,也可以選擇按分隔符圾浅,如果列中包含多個分隔符,還可以選擇按哪個位置的分隔符來拆分:
8分組
9.提取
PQ 的提取功能可以按照長度憾朴、首字符狸捕、尾字符、范圍等來提取众雷,比如下面這個例子灸拍,提取前2 個字符
10.行列轉(zhuǎn)置
11.行列操作
12逆透視列
這是 PQ 非常便捷的逆天功能,由于數(shù)據(jù)分析的需要砾省,我們經(jīng)常要將二維表變?yōu)橐痪S表鸡岗,之前在Excel 中需要很多操作步驟才能完成,而通過逆透視功能编兄,可以一鍵降為一維表
13透視列
做分析需要一維表轩性,而為了展現(xiàn)的需要,常常還要把一維表變成二維表狠鸳,也就是 Excel 中的數(shù)據(jù)透視揣苏,在PQ 中同樣可以一鍵透視,比如把剛才的一維表變成原樣碰煌,聚合方式選擇‘不要聚合”舒岸。
????????????????????????????????????????????????數(shù)據(jù)豐富
加入新列绅作、新行芦圾,或者從其他表中添加進來更多維度的數(shù)據(jù)
1添加列
四種形式,重復列俄认、索引列个少、條件列洪乍、自定義列:
2.追加查詢 多表行
追加查詢是在現(xiàn)有記錄的基礎上,在下邊添加新的行數(shù)據(jù)夜焦, 是一種縱向合并壳澳,比如有兩個表格式相同,需要合并為一個表茫经,點擊“追加查詢”巷波,
3.合并查詢 多表列 相當于vlookup函數(shù)。
? ??????????????????????????????????????M函數(shù)
1.M函數(shù)的基本規(guī)范:
? M 函數(shù)對大小寫敏感卸伞,每一個字母必須按函數(shù)規(guī)范書寫抹镊,第一個字母都是大寫
? 表被稱為 Table,每行的內(nèi)容是一個 Record荤傲,每列的內(nèi)容是一個 List
? 行標用大括號{ }垮耳,比如取第一行的內(nèi)容: =表{0} //PQ 的第一行從 0 開始
? 列標用中括號[ ],比如取自定義列的內(nèi)容: =表[自定義]
? 取第一行自定義列的內(nèi)容: =表{0}[自定義]
2.常用M函數(shù):
聚合函數(shù):
求和: List.Sum()
求最小值: List.Min()
求最大值: List.Max()
求平均值: List.Average()
文本函數(shù):
求文本長度: Text.Length()
去文本空格: Text.Trim()
取前 n 個字符: Text.Start(文本,n)
取后 n 個字符: Text.End(文本,n)
提取數(shù)據(jù)函數(shù):
從 Excel 表中提取數(shù)據(jù): Excel.Workbook()
從 Csv/Txt 中提取數(shù)據(jù): Csv.Document()
條件函數(shù):
if else then (相當于 Excel 中的 IF)
3.從哪里查找 M 函數(shù)
新建一個空查詢遂黍,在公式標記欄中輸入#shared终佛,就把所有的 M 函數(shù)顯示出來了
????????????????????????????????????數(shù)據(jù)建模
1.定義:
Power BI 可以從多個表格、多種來源的數(shù)據(jù)中雾家,根據(jù)不同的維度铃彰、不同
的邏輯來聚合分析數(shù)據(jù);而提取數(shù)據(jù)的前提是要將這些數(shù)據(jù)表建立關系芯咧,這個建立關系的
過程就是數(shù)據(jù)建模豌研。
2.基數(shù)
? 基數(shù)就是兩個連接字段的對應關系,分為多對一唬党、一對一和一對多鹃共,一對多和多對一
其實是一樣的,實際上就是兩種關系:
? 多對一(*: 1):這是最常見的類型驶拱,代表一個表中的關系列有重復值霜浴,而在另一個表
中是單一值
? 一對一(1: 1):兩個表是一對一的關系,列中的每個值在兩個表中都是唯一的
? 具有唯一值的表通常稱為“查找表”蓝纲,而具有多個值的表稱為“引用表”阴孟。在上述的關系圖
上,產(chǎn)品明細表上類別手機税迷、平板永丝、電腦都不是唯一的,每個品牌都有這種類型箭养,是
個引用表慕嚷;但類別表上,幾種類別都是唯一值,因此這兩個表是多對一的關系喝检,類別
表也就是查找表
3.交叉篩選方向
表示數(shù)據(jù)篩選的流向嗅辣,有兩種類型:
? 雙向:兩個表可以互相篩選
? 單向:一個表只能對另一個表篩選,而不能反向
4.DAX
創(chuàng)建度量值的公式稱為 DAX 公式
????????????????????????????????????????度量值
1.定義
度量值是用 DAX 公式創(chuàng)建一個虛擬字段的數(shù)據(jù)值挠说,她不改變源數(shù)據(jù)澡谭,也不改變
數(shù)據(jù)模型。
2.度量值特征
? ? ? ? 1上下文
度量值的最重要的特征: 上下文损俭,上下文就是度量值所處的環(huán)境蛙奖,篩選表的行列標簽、切片器的選中杆兵,都是度量值的上下
文外永,比如北京
2017 年截至 5 月的蘋果手機累計銷售額 3424000,它的上下文就是下面這 5
個維度:
[城市]="北京市"
[品牌]="蘋果"
[類別]="手機"
[年度]=2017
[月份]=5 月
? ? ? ? ? ?2度量值不浪費內(nèi)存拧咳,只有被拖到圖表上才執(zhí)行運算伯顶,如果數(shù)據(jù)量非常大的時候這點非
常有利
? ? ? ? ? ? 3度量值可以循環(huán)使用,比如上面的建立的度量值:
? ??????????????????????????????????????????????DAX
DAX:data analysis expression
DAX的主要功能正是查詢和運算骆膝, DAX 查詢函數(shù)負責篩選出有用的數(shù)據(jù)集合祭衩,然后利用 DAX 的
聚合函數(shù)執(zhí)行計算
上下文:
外部上下文:外部可以看得見的篩選:標簽和切片器,
內(nèi)部上下文:創(chuàng)建度量值的 DAX 公式阅签,它的查詢篩選函數(shù)可以擴大掐暮、限制或者重置外部上下文
DAX的使用范圍:
DAX除了可以創(chuàng)建度量值。還可以新建列(占用內(nèi)存)政钟。
DAX參數(shù)的基本格式:
表名用單引號' '括著 // '日期表'
字段用中括號[ ]括著 //[日期]
度量值也是用中括號[ ]
引用字段始終要包含表名路克,以和度量值區(qū)分開
DAX 常用函數(shù)
聚合函數(shù):
SUM 求和
AVERAGE 平均
MIN 最小
MAX? 最大
COUNT:計數(shù)
?COUNTROWS:計算行數(shù)
DISTINCTCOUNT:計算不重復值的個數(shù)
函數(shù)后面加x,可以循環(huán)訪問表的每一行养交,并執(zhí)行計算精算,所以也被稱為迭代函數(shù)
SUMX
AVERAGEX
MINX
MAXX
RANKX
時間智能函數(shù)
PREVIOUSYEAR/Q/M/D:上一年/季/月/日
NEXTYEAR/Q/M/D:下一年/季/月/日
?TOTALYTD/QTD/MTD:年/季/月初至今
?SAMEPERIODLASTYEAR:上年同期
PARALLELPERIOD:上一期
?DATESINPERIOD:指定期間的日期
篩選函數(shù)
FILTER:篩選,F(xiàn)ILTER 函數(shù)返回的表碎连,所以它不能單獨用于建度量值
?ALL:所有值灰羽,可以清除篩選
ALLEXCEPT:保留指定列
VALUES:返回不重復值
CALCULATE:
CALCULATE(<expression>,<filter1>,<filter2>…)
第一個參數(shù)是計算表達式,可以執(zhí)行各種聚合運算
從第二個參數(shù)開始鱼辙,是一系列篩選條件廉嚼,可以為空;如果多個篩選條件倒戏,用逗號分隔
所有曬選條件的交集形成最終的篩選數(shù)據(jù)集合
根據(jù)篩選出的數(shù)據(jù)集合執(zhí)行第一個參數(shù)的聚合運算并返回運算結(jié)果
calculate 可以直接引用創(chuàng)建好的度量值怠噪。
添加限制條件,縮小上下文:
結(jié)合 ALL 函數(shù)杜跷,擴大上下文:
ALL('產(chǎn)品明細')的意思是清除產(chǎn)品明細表里的所有篩選傍念,外部篩選器不起作用了矫夷,每行統(tǒng)計的都是該表中的所有產(chǎn)品。
重置上下文:
FILTER 函數(shù)
?第一個參數(shù)<table>是要篩選的表
第二個參數(shù)<filter>是篩選條件
返回的是一張表捂寿,不能單獨使用,需要與其他函數(shù)結(jié)合使用
產(chǎn)品數(shù)量2 = calculate([產(chǎn)品數(shù)量],'產(chǎn)品明細表'[品牌]="蘋果")
等同于:
產(chǎn)品數(shù)量2 =?calculate([產(chǎn)品數(shù)量],FILTER(ALL('產(chǎn)品明細表'[品牌]),'產(chǎn)品明細表'[品牌]="蘋果"))
常用格式:calculate(...,FILTER(ALL(..),....))
HASONEVALUE 和 SUMX 函數(shù)
1.HASONEVALUE(列名)孵运,是個邏輯判斷函數(shù)秦陋,如果有單一值,返回 ture,否則返回 false
判斷外部上下文中是否為該列中的唯一值治笨,做切片器交互時十分有用
2.SUMX(表驳概,表中每一行計算的表達式)
逐行計算,占用內(nèi)存旷赖,數(shù)據(jù)量過大時
EARLIER函數(shù)
操作行中對應參數(shù)列的操作顺又。
powerbi? 可視化
1.堆積圖:
不同的序列在一根柱子上顯示
可以直接比較總量的大小
分類序列的數(shù)值比較功能弱化
2.簇狀柱形圖的特征:
? 不同序列使用不同的柱子
? 可以比較各序列的數(shù)值大小
? 總量比較功能弱化
3.百分比堆積柱形圖的特征:
? 與堆積柱形圖類似,不同序列在一根柱子上顯示
? 顯示各序列的相對大小等孵, Y 軸標簽變?yōu)榘俜直?/p>
? 無法比較總量稚照,每根柱子都一樣高
柱形圖格式設置:
4.單層樹狀圖
5.雙層樹狀圖
在詳情信息中添加字段。
樹狀圖的使用場景
? 要顯示大量的分層數(shù)據(jù)
? 條形圖不能有效地處理大量值
? 要顯示每個部分與整體之間的比例
? 要顯示層次結(jié)構(gòu)中指標在各個類別層次的分布的模式
? 要使用大小和顏色編碼顯示屬性
? 要發(fā)現(xiàn)模式俯萌、離群值果录、最重要因素和異常
6.氣泡地圖-Bubble Map
7著色地圖-Filled Map
8.ArcGIS 地圖
PowerBI 常用操作
1.查看圖表的三種方式:
選中圖表,點擊上方【數(shù)據(jù)/鉆取】選項卡“查看數(shù)據(jù)”
選中圖表咐熙,然后點擊右上角三個點弱恒,選擇“顯示數(shù)據(jù)”
在圖表上單擊右鍵,選擇“查看數(shù)據(jù)”
2.圖表鉆取2種棋恼。
通過圖表右上角的向下箭頭“啟用深化”返弹。
使用頂部 Power BI“數(shù)據(jù)/鉆取”選項卡。
3.編輯交互
如果需要響應該篩選爪飘,則選擇“篩選”圖標
如果不希望被篩選义起,則選擇“不起作用”圖標