?說(shuō)到百分位,不得不提箱線圖,也就是股市最常見(jiàn)到的圖表之一,在統(tǒng)計(jì)學(xué)上有5個(gè)數(shù)據(jù)組成了箱線圖的數(shù)據(jù),包括最大值、最小值、中值,以及兩個(gè)四分位數(shù)(包括1/4分位和3/4分位),今天我們介紹一下分位數(shù)中的擴(kuò)展:百分位數(shù)。 ?百分位數(shù)的計(jì)算方法 統(tǒng)計(jì)學(xué)術(shù)語(yǔ),如果將一組數(shù)據(jù)從小到大排序,并計(jì)算相應(yīng)的累計(jì)百分位,則某一百分位所對(duì)應(yīng)數(shù)據(jù)的值就稱為這一百分位的百分位數(shù)??杀硎緸椋阂唤Mn個(gè)觀測(cè)值按數(shù)值大小排列。如,處于p%位置的值稱第p百分位數(shù)。 在DAX函數(shù)中,關(guān)于百分位數(shù)的計(jì)算有兩個(gè),分別是PERCENTILE.EXC以及PERCENTILE.INC,這兩個(gè)函數(shù)的算法是有區(qū)別的,我們先來(lái)看看計(jì)算的結(jié)果。 先準(zhǔn)備一組數(shù)據(jù),如下圖所示: 為了縮小數(shù)據(jù)的范圍,我們將銷售明細(xì)和品類碼表做關(guān)聯(lián)后,只做Accessories品類的計(jì)算,因此可以在報(bào)表中將品類拖拽到一個(gè)篩選器上,并篩選第一個(gè)選項(xiàng),如下圖所示:
創(chuàng)建兩個(gè)度量值,表達(dá)式分別是:
百分比_EXC = PERCENTILE.EXC('ResellerSales_USD'[SalesAmount_USD],0.1) 以及 百分比_INC = PERCENTILE.INC('ResellerSales_USD'[SalesAmount_USD],0.1) 創(chuàng)建完畢后,將這兩個(gè)度量值拖拽到一個(gè)多行卡可視化對(duì)象中,效果如下圖所示:
也就是說(shuō),品類是Accessories,計(jì)算銷售額的10%分位的值分別是2,162.90和2,192.20,其中PERCENTILE.EXC 這個(gè)函數(shù)計(jì)算出來(lái)的結(jié)果是2,162.90,這兩組度量值計(jì)算出來(lái)的結(jié)果是否準(zhǔn)確呢?我們先了解一下這兩個(gè)函數(shù)的計(jì)算原來(lái),以及為了方便驗(yàn)證,我們到Excel 表中按照計(jì)算原理來(lái)驗(yàn)證。 需要注意的是,k值雖然說(shuō)是百分比,但是不能使用百分比來(lái)輸入,如 百分比_EXC = PERCENTILE.EXC('ResellerSales_USD'[SalesAmount_USD],0.1)中的k值為0.1,就不能輸入10%。
下面我們來(lái)說(shuō)說(shuō)這兩個(gè)函數(shù)的計(jì)算原理,其中在Power BI Desktop 中的計(jì)算原理,和在Excel 中是一樣的。 (1)PERCENTILE.INC(array,k) 描述性解釋 將數(shù)組array從小到大排序(升序),設(shè)n為數(shù)組元素個(gè)數(shù),計(jì)算出k*(n-1)的整數(shù)部分為a,小數(shù)部分為b,則PERCENTILE.INC(array,k)的值是:array第a+1個(gè)數(shù)×(1-b)+array第a+2個(gè)數(shù)×b。 (2)PERCENTILE.EXC(array,k) 描述性解釋 將數(shù)組array從小到大排序(升序),設(shè)n為數(shù)組元素個(gè)數(shù),計(jì)算出k*(n-1)的整數(shù)部分為a,小數(shù)部分為b,則PERCENTILE.INC(array,k)的值是:array第a個(gè)數(shù)×(1-b)+array第a+1個(gè)數(shù)×b。 我們用PERCENTILE.EXC 函數(shù)的計(jì)算原來(lái),用上述的數(shù)據(jù),到Excel 中來(lái)驗(yàn)證一下。首先我們先對(duì)銷售額列排序,并在B列做一個(gè)序號(hào)標(biāo)識(shí)。 第1步:n值 函數(shù):=COUNTA(A2:A279),其中array 為A2:A279 計(jì)算結(jié)果:278 效果如下圖所示: 第2步:k值 函數(shù):這里我們已經(jīng)設(shè)置為固定的0.1,即10% 效果如下圖所示: 第3步:k*(n+1)值 函數(shù):=J11*(J10+1) 計(jì)算結(jié)果:27.9 效果如下圖所示: 第4步:整數(shù)部分 函數(shù):=TRUNC(J12) 計(jì)算結(jié)果:27 效果如下圖所示: 第5步:小數(shù)部分 函數(shù):=J12-J13 計(jì)算結(jié)果:0.9 效果如下圖所示: 第6步:計(jì)算PERCENTILE.EXC 的結(jié)果 函數(shù):=A28*(1-J14)+A29*J14 計(jì)算結(jié)果:2162.9,其中A28為array第a個(gè)數(shù),即第27個(gè)數(shù)據(jù) 效果如下圖所示: 這個(gè)數(shù)據(jù)和我們?cè)赑ower BI Desktop 中的計(jì)算結(jié)果是一致的,效果如下圖所示: PERCENTILE.INC 這個(gè)函數(shù)的計(jì)算方法也類似,有興趣的朋友可以動(dòng)手按照函數(shù)的計(jì)算原理驗(yàn)證一下,在這里就不再贅述了。 在Power BI Desktop 中,計(jì)算百分位數(shù),除了PERCENTILE.EXC、PERCENTILE.INC這兩個(gè)函數(shù)之外,還有兩個(gè)函數(shù),分別是PERCENTILEX.EXC和PERCENTILEX.INC,這兩組函數(shù)的區(qū)別在于他們的參數(shù)引用范圍一樣,前者引用的是列,而后者引用的是表+列,計(jì)算的結(jié)果是一樣的,有興趣的朋友也可以自己動(dòng)手驗(yàn)證一下。 在Excel 中,關(guān)于百分位的計(jì)算還有一組逆計(jì)算函數(shù),包括PERCENTRANK.EXC和PERCENTRANK.INC,他們分別是PERCENTILE.EXC、PERCENTILE.INC這兩個(gè)函數(shù)的逆序計(jì)算,但是注意的是,這組函數(shù)目前在Power BI Desktop 中尚沒(méi)有。 百分位數(shù)在日常分析中應(yīng)用還是比較廣泛的,除了開始提到的箱線圖,我們還有其他的場(chǎng)景可以用到,比如我們要看一個(gè)班級(jí)里邊70%的學(xué)生分?jǐn)?shù)都超過(guò)多少分,此時(shí)我們就可以使用到百分位數(shù)的計(jì)算函數(shù)。 |
|
來(lái)自: 百了無(wú)恨 > 《電腦知識(shí)》