五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

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

Power BI之DAX神功:第2卷第8回 RankX在行上下文中的應(yīng)用

2021-09-22 13:48 作者:孫興華zz  | 我要投稿

當(dāng)你理解了前面幾節(jié)課的知識(shí)后,這節(jié)課的知識(shí)并不難。新建列對(duì)于新入門的小伙伴可以經(jīng)常使用,因?yàn)橹庇^,對(duì)你邏輯影響較小。但是老手使用的頻率就低了。

一、【入門】新建列中的RankX

表名:Sheet1

【度量值】總銷售 = SUM ( 'Sheet1'[銷售])

【新建列】新列=[總銷售]

因?yàn)槎攘恐堤焐哂泻Y選功能的特性,我們沒辦法聚合銷售,就沒有辦法按姓名排名,所以我們要使用ALL(列),指定列取消篩選功能

【新建列】新列 = CALCULATE([總銷售],ALL('Sheet1'[銷售]))

我們需要相同姓名的人銷售聚合!才能對(duì)每個(gè)人進(jìn)行銷售排名,所以要用ALL('Sheet1'[銷售])

這句話,要記住,否則你7秒后就忘記了!RankX用在新建列時(shí),這個(gè)概念很重要。

【新建列】排名 = rankx(all(Sheet1[姓名]),CALCULATE([總銷售],ALL('Sheet1'[銷售])))

默認(rèn)降序,國際排名。

工作原理:

二、【進(jìn)階】新建列中的分層級(jí)RankX

1.簡單版:

表名:Sheet2

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

【新建列】排名 = RankX(all(Sheet2[名稱]),CALCULATE([總銷售2],ALL('Sheet2'[銷售])))

你會(huì)發(fā)現(xiàn),寫法與【入門】是一樣的,你理解它的工作原理后,秒懂:

2.復(fù)雜版

表名:Sheet3

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

【新建列】排名 = Rankx(ALL(Sheet3[名稱]), CALCULATE([總銷售],ALL('Sheet3'[銷售])))

這個(gè)原理就不用講了,同理【進(jìn)階】簡單版,無論有多少個(gè)列,都是分組的概念

如果我們讓產(chǎn)地就是個(gè)擺設(shè),只顯示但不影響排名

【新建列】排名 = Rankx(ALL(Sheet3[名稱],Sheet3[產(chǎn)地]), CALCULATE([總銷售],ALL('Sheet3'[銷售])))

《DAX神功》答網(wǎng)友問06 我們同答了度量值中使用RankX時(shí)處理這個(gè)問題的方法,同理可以應(yīng)用到新建列上。也可以使用REMOVEFILTERS

三、答網(wǎng)友問:

問1:為什么我們看到有些人用ALLEXCEPT,而你使用ALL呢?

答1:《DAX神功》第1卷第8回我們講過

ALL(列)? 指定表指定列取消內(nèi)部與外部篩選功能

ALLEXCEPT('表',列)? ?指定表指定列以外的列取消內(nèi)部與外部篩選功能

如上圖所示,我們的公式可以寫成:

【度量值】排名 = RANKX (ALL ( 'Sheet3'[名稱],Sheet3[產(chǎn)地] ),CALCULATE ( [總銷售], ALLEXCEPT('Sheet3','Sheet3'[分類],'Sheet3'[名稱])))

我會(huì)根據(jù)具體情況使用這兩個(gè)函數(shù)。

問2:我在網(wǎng)上看到一個(gè)案例,人家使用了第3參數(shù),請(qǐng)問這是什么原理?如下圖:

答2:因?yàn)槲铱床欢@個(gè)案例的排名需求,如果你們誰能看懂需求,評(píng)論區(qū)留言。

能給我講清楚排名需求,我就能講清楚公式原理。換個(gè)方式,如果你問我,8+6=2是什么原理?我不能說,你將+號(hào)看成-號(hào)了,也許你有特殊的業(yè)務(wù)需求。

你舉的這個(gè)案例,我個(gè)人能想到以下幾種排名情況:

情況一:按品牌排名

【新建列】分配銷售 = CALCULATE([總銷售],all('FACT'[銷售],'FACT'[城市]))

Ps: 這是讓看清楚步驟,我們需要按品牌進(jìn)行銷售聚合,才能排名

【新建列】品牌排名 = rankx(all('FACT'[品牌]),CALCULATE([總銷售],all('FACT'[銷售],'FACT'[城市])))

Ps: 也可以使用ALLEXCEPT

【新建列】品牌排名 = rankx(all('FACT'[品牌]),CALCULATE([總銷售],ALLEXCEPT('FACT','FACT'[品牌])))

情況二:按城市排名(跟情況一很相似)

【新建列】分配銷售 = CALCULATE([總銷售],all('FACT'[銷售],'FACT'[品牌]))

【新建列】品牌排名 = rankx(all('FACT'[城市]),CALCULATE([總銷售],all('FACT'[銷售],'FACT'[品牌])))

情況三:按品牌和城市排名(品牌和城市相同的算一組,例如:華為~深圳)

【新建列】分配銷售=CALCULATE([總銷售],all('FACT'[銷售]))

【新建列】排名 = rankx(all('FACT'[品牌],'FACT'[城市]),CALCULATE([總銷售],all('FACT'[銷售])))

情況四:按品牌分組,對(duì)每組下的城市按銷售排名

Ps: 本文章,二、【進(jìn)階】新建列中的RankX? 1.簡單版

【新建列】排名 = RankX(all('FACT'[城市]),CALCULATE([總銷售],ALL('FACT'[銷售])))

情況五:按城市分組,對(duì)每組下的品牌按銷售排名

Ps: 本文章,二、【進(jìn)階】新建列中的RankX? 1.簡單版

【新建列】排名 = RankX(all('FACT'[品牌]),CALCULATE([總銷售],ALL('FACT'[銷售])))

情況六:只看銷售,從大到小排名

最簡單的方法:

【新建列】排名 = rankx(all('FACT'[品牌],'FACT'[城市],'FACT'[銷售]),[總銷售])

復(fù)雜的方法:

因?yàn)?#34;FACT"這張表是多端表,如果只有這一張表,且你需要對(duì)每條記錄按銷售排序

需要先到PowerQuery中增加索引列,再進(jìn)行排名。

【新建列】排名 = rankx(all('FACT'[索引],'FACT'[品牌],'FACT'[城市]),CALCULATE([總銷售],all('FACT'[銷售])))

當(dāng)然,在《DAX神功》答網(wǎng)友問06時(shí)我們也說過:用REMOVEFILTERS也可以

【新建列】排名 = rankx(all('FACT'[索引]),CALCULATE([總銷售],all('FACT'[銷售]),REMOVEFILTERS('FACT'[品牌],'FACT'[城市])))

DAX非常靈活,靈活到你頭暈眼花,當(dāng)你在網(wǎng)上見到各種方法時(shí),不要輕易的說人家思路不對(duì),坐井觀天,井口的大小就是天的大小。

下節(jié)課,是RankX部分的最后一節(jié)課,小伙伴不要錯(cuò)過哦!

《孫興華講PowerBI火力全開》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爬蟲、Python數(shù)據(jù)分析、ExcelVBA、WordVBA、AccessVBA、MySQL等等

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

Power BI之DAX神功:第2卷第8回 RankX在行上下文中的應(yīng)用的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
阳信县| 绥德县| 芜湖市| 吕梁市| 津南区| 永宁县| 三门峡市| 平顺县| 阆中市| 华宁县| 富平县| 类乌齐县| 江达县| 宕昌县| 纳雍县| 桂东县| 平度市| 涟水县| 广灵县| 寻甸| 江川县| 清水河县| 疏附县| 南充市| 刚察县| 布拖县| 修水县| 论坛| 衡阳市| 页游| 顺平县| 宜宾县| 泉州市| 新平| 邵东县| 北京市| 利津县| 皮山县| 莱阳市| 会泽县| 双辽市|