
百分位计算
百分位数据计算,可以说是日常计算中比较常见的需求,通常会用于价格段位分析使用,而在PowerBI中,用于百分位计算的函数一共有四个。
语法
PERCENTILE.EXC(, )
PERCENTILE.INC(, )
PERCENTILEX.EXC(, , )
PERCENTILEX.INC(, , )
- 1
- 2
- 3
- 4
说明
1.PERCENTILE与PERCENTILEX的区别,与SUM和SUMX的区别是一样的,一个是聚合函数,一个是迭代函数。
2.INC指的是Inclusive,即包含的意思,EXC指的是exclusive,即不包含的意思,因此INC和EXC的区别在于,一个包含两端值,一个不包含两端值。
3.K代表百分位,介于0~1之间。
4.对于INC,若K不是1/(N-1)的倍数,则函数会进行插值,确认第K个百分位的值。
5.对于EXC,若K不是1/(N+1)的倍数,则函数会进行插值,确认第K个百分位的值。
返回结果
值
例子
案例数据如下:

将其导入到PowerBI中,通过表格,展示如下:

构建基础度量值:
001.SalesAmount =
SUM ( Fact_Sales[SalesAmount] )
- 1
- 2
例子1:
使用PERCENTILE.INC计算80%分位值。
002.Percentileinc =
PERCENTILE.INC ( Fact_Sales[SalesAmount], 0.8 )
- 1
- 2
结果如下:

例子2:
使用PERCENTILE.EXC计算50%分位值。
003.Percentileexc =
PERCENTILE.EXC ( Fact_Sales[SalesAmount], 0.5 )
- 1
- 2
结果如下:

例子3:
使用PERCENTILEX.INC计算80%分位值。
004.PercentileInc =
VAR PercentileInc =
PERCENTILEX.INC ( 'Fact_Sales', [001.SalesAmount], 0.8 )
VAR Result =
SUMX ( VALUES ( Fact_Sales[ProductName] ), PercentileInc )
RETURN
Result
- 1
- 2
- 3
- 4
- 5
- 6
- 7
结果如下:

例子4:
使用PERCENTILEX.EXC计算50%分位值。
005.PercentileExc =
VAR PercentileExc =
PERCENTILEX.EXC ( 'Fact_Sales', [001.SalesAmount], 0.5 )
VAR Result =
SUMX ( VALUES ( Fact_Sales[ProductName] ), PercentileExc )
RETURN
Result
- 1
- 2
- 3
- 4
- 5
- 6
- 7
结果如下:

例子5:
使用PERCENTILEX.INC计算分组聚合后80%分位值。
006.PercentileIncForGroup =
VAR SumOfGroup =
ADDCOLUMNS (
ALL ( Fact_Sales[ProductName] ),
"@SalesAmount", [001.SalesAmount]
)
VAR Result =
PERCENTILEX.INC ( SumOfGroup, [@SalesAmount], 0.8 )
RETURN
Result
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
结果如下:

例子6:
使用PERCENTILEX.EXC计算分组聚合后20%分位值。
007.PercentileExcForGroup =
VAR SumOfGroup =
ADDCOLUMNS (
ALL ( Fact_Sales[ProductName] ),
"@SalesAmount", [001.SalesAmount]
)
VAR Result =
PERCENTILEX.EXC ( SumOfGroup, [@SalesAmount], 0.2 )
RETURN
Result
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
结果如下:



这里是白茶,一个PowerBI的初学者。

-
相关阅读:
前端代码评审规则
【学习笔记】ARC146/AGC020/
存储bag文件并转csv,一键启动思路、默认python3
Java的Class类讲解之Class对象的产生
用Three.js打造酷炫3D个人网站(含源码)
Paxos分布式共识算法
基于知识图谱的复杂问题推理问答
关于在ts中使用最新版redux的方法记录
上海青浦区大众驾校(科目二·自动挡)真实考场操作全程
Java笔记:手写spring之ioc
-
原文地址:https://blog.csdn.net/sterln/article/details/127706993
-
最新文章
-
沪漂五周年了:我越来越迷茫了
Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
MySQL-Seconds_behind_master的精度误差
[MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
Agent OS :五种驯服不确定性的范式
PortSwigger SQL注入LAB11
数据库即时编译JIT
[Begin]AI Learn Data Day 0
深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU