最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Power BI之DAX神功:第2卷第6回 讓RankX的第3參數(shù)不再神秘

2021-09-14 12:26 作者:孫興華zz  | 我要投稿

《孫興華講PowerBI火力全開(kāi)》筆記25課已經(jīng)提到過(guò)RankX的第三參數(shù)

那一年我跟大家承諾過(guò),一定會(huì)在火力全開(kāi)的后續(xù)版本中給大家講解。

現(xiàn)在是我們實(shí)現(xiàn)承諾的時(shí)刻!

有如下表:

表名:Sheet1

需求:60分以下不及格,60~85分以下及格,85~90分以下良好,90分及以上優(yōu)秀

《DAX神功》第1卷第3回介紹了表構(gòu)造函數(shù)

思路:

【新建表】表 = SelectColumns({0,60,85,90},"范圍",[Value])

【度量值】總分=Sum('Sheet1'[分?jǐn)?shù)])

【度量值】找位置 = rankx('表','表'[范圍],[總分])

Ps:找位置這個(gè)度量值,在{0,60,85,90}這張表中,找到每個(gè)分?jǐn)?shù)的位置,并編號(hào)

運(yùn)算示意圖

【度量值】

評(píng)價(jià) =?

? ? ? ?switch(TRUE(),

? ? ? ? ? ? ? ? ?[找位置]=1,"優(yōu)秀",

? ? ? ? ? ? ? ? ?[找位置]=2,"良好",

? ? ? ? ? ? ? ? ?[找位置]=3,"及格",

? ? ? ? "不及格")

當(dāng)然以上步驟是我們思考的過(guò)程,我們可以將這些步驟寫(xiě)在一起:

評(píng)價(jià)2 =?

? ? VAR a= sum(Sheet1[分?jǐn)?shù)])

? ? VAR b= rankx({0,60,85,90},[Value],a)

return

? ? switch(TRUE(),

? ? ? ? ? ? b=1,"優(yōu)秀",

? ? ? ? ? ? b=2,"良好",

? ? ? ? ? ? b=3,"及格",

? ? ? ? "不及格")

可能有些小伙伴會(huì)有疑問(wèn),自定義分段的表我們可以使用表構(gòu)造函數(shù){}處理

如果我想創(chuàng)建一個(gè)表,例如:從0到100,步長(zhǎng)為20,需要手寫(xiě)嗎?不需要

【新建表】表 2 = GENERATESERIES(0,100,20)

如果需要更換字段名,詳見(jiàn)《DAX神功》第1卷第3回

【新建表】表 2 = SelectColumns(GENERATESERIES(0,100,20),"范圍",[Value])

《The Definitive Guide to DAX》書(shū)中對(duì)RankX第三參數(shù)解釋:(若我翻譯不佳請(qǐng)見(jiàn)諒,你們可以參考中文版譯者高飛前輩的翻譯)

RankX第三參數(shù)是標(biāo)量表達(dá)式,作用是:使用不同的表達(dá)式分別計(jì)算查找表和用于排序的值。

也許是我翻譯問(wèn)題,這句話我第一次看到時(shí),不易理解。

我講一下我的理解方式,并附證明:

現(xiàn)在我們更換一張有重復(fù)姓名的表來(lái)分析:

表名:Sheet2

需求:銷售90以上優(yōu)秀,85以上良好,60以上及格,60以下不及格

【度量值】

評(píng)價(jià) =?

? ? ? ? VAR a= sum(Sheet2[銷量])

? ? ? ? VAR b= rankx({0,60,85,90},[Value],a)

return

? ? ? ?switch(TRUE(),

? ? ? ? ? ? ? ? b=1,"優(yōu)秀",

? ? ? ? ? ? ? ? b=2,"良好",

? ? ? ? ? ? ? ? b=3,"及格",

? ? ? ?"不及格")

細(xì)心的小伙伴會(huì)發(fā)現(xiàn)一個(gè)問(wèn)題:孫興華是不是上節(jié)課講錯(cuò)了?他不是說(shuō)過(guò)RankX不能在矩陣上篩選,這張表中孫興華有兩次銷售,分別是51和9,這不就是分組聚合了嗎?加在一起是60,正好及格。

接下來(lái),孫興華給你們證明,他是對(duì)的!

很多人會(huì)想起上節(jié)課的 【度量值】排名2 = RANKX(ALL(Sheet1[商品]),[總銷售])?

你別忘記,上節(jié)課你的行標(biāo)題上面的商品字段和你排名2中的公式sheet1是一張表(自己表中的字段可以篩選自己的表),如果有多張表,且一對(duì)多關(guān)系,那么一端也可以篩選多端。

我們?cè)倏唇裉爝@張表:

表名:Sheet2

【度量值】總銷量=Sum(Sheet2[銷量])

我們以下面的公式為例,{0,60,85,90} 這張表跟你的Sheet2沒(méi)有毛關(guān)系吧?也沒(méi)有連線吧?這是我用表構(gòu)造函數(shù)造出來(lái)的。

【度量值】等級(jí)排名 = rankx({0,60,85,90},[Value],[總銷量])

所以,姓名字段是不能篩選{0,60,85,90} 這張表的。

我問(wèn)你:不能篩選這不就相當(dāng)于all嗎?

我們繼續(xù)觀察,下面兩個(gè)度量值(第1個(gè)度量值是我們上節(jié)課用到的)

【度量值】排名2 = RANKX(ALL(Sheet1[商品]),[總銷售])?

【度量值】等級(jí)排名 = RANKX({0,60,85,90},[Value],[總銷量])

由于{0,60,85,90}跟我們Sheet2這張表無(wú)關(guān),故不能篩選,相當(dāng)于all函數(shù),且第2參數(shù)指定了它的列,就相當(dāng)于ALL(列)

現(xiàn)在Rankx第三參數(shù)的秘密已經(jīng)不再是秘密了

兩個(gè)參數(shù)時(shí)的???RankX(ALL(列),[度量值])? ?等價(jià)于? ? RankX(構(gòu)造表,列,[度量值])

口說(shuō)無(wú)憑,誰(shuí)指證,誰(shuí)舉證,我來(lái)證明:

表名:Sheet3

【度量值】總銷售 = sum(Sheet3[銷售])

【度量值】排名1 = RANKX(ALL(Sheet3[商品]),[總銷售])?

【度量值】排名2 = RANKX({3,5,7},[Value],[總銷售])?

重點(diǎn):可以聚合度量值的銷量、金額、分?jǐn)?shù)等數(shù)值,但是不能聚合排名的名次值!2元+5元=7元,1個(gè)+2個(gè)=3個(gè),第3名+第5名=不會(huì)算

關(guān)于RankX的更多知識(shí),我們下節(jié)課再說(shuō)!

《孫興華講PowerBI火力全開(kāi)》PowerBI必學(xué)課程

https://www.bilibili.com/video/BV1qa4y1H7wp

《DAX神功》文字版合集:

https://www.bilibili.com/read/readlist/rl442274

《DAX神功》視頻版合集:

https://www.bilibili.com/video/BV1YE411E7p3

PowerBI(DAX函數(shù))、PowerQuery(M函數(shù))、Python辦公自動(dòng)化、Python爬蟲(chóng)、Python數(shù)據(jù)分析、ExcelVBA、WordVBA、AccessVBA、MySQL等等

https://www.bilibili.com/read/cv10222110

Power BI之DAX神功:第2卷第6回 讓RankX的第3參數(shù)不再神秘的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
孙吴县| 县级市| 碌曲县| 招远市| 岳池县| 南投市| 五常市| 怀安县| 安达市| 大悟县| 临邑县| 福安市| 滨州市| 阿城市| 昌黎县| 清水县| 平潭县| 常山县| 阿拉善左旗| 德庆县| 阳城县| 奉贤区| 乌鲁木齐县| 高安市| 张掖市| 黑水县| 富阳市| 浑源县| 宣化县| 朔州市| 宁蒗| 武安市| 花莲县| 海林市| 汶川县| 彭泽县| 关岭| 苏州市| 滨州市| 甘肃省| 宁乡县|