powerbi - 按总和对类别进行排名 (Power BI)
问题描述
我需要为我的仪表板对产品进行排名。每天,我们存储产品的销售。结果我们有这个数据集示例:
+-----------+------------+-------+
| product | date | sales |
+-----------+------------+-------+
| coffee | 11/03/2019 | 15 |
| coffee | 12/03/2019 | 10 |
| coffee | 13/03/2019 | 28 |
| coffee | 14/03/2019 | 1 |
| tea | 11/03/2019 | 5 |
| tea | 12/03/2019 | 2 |
| tea | 13/03/2019 | 6 |
| tea | 14/03/2019 | 7 |
| Chocolate | 11/03/2019 | 30 |
| Chocolate | 11/03/2019 | 4 |
| Chocolate | 11/03/2019 | 15 |
| Chocolate | 11/03/2019 | 10 |
+-----------+------------+-------+
我的尝试
我实际上设法对我的产品进行了排名,但不是以我想要的方式;事实上,排名过程会随着行数的增加而增加。例如,巧克力排在第一位,但我们记录了 4 行,因此咖啡排在第 5 位而不是第 2 位。
+-----------+------------+-------+-----+------+
| product | date | sales | sum | rank |
+-----------+------------+-------+-----+------+
| coffee | 11/03/2019 | 15 | 54 | 5 |
| coffee | 12/03/2019 | 10 | 54 | 5 |
| coffee | 13/03/2019 | 28 | 54 | 5 |
| coffee | 14/03/2019 | 1 | 54 | 5 |
| tea | 11/03/2019 | 5 | 20 | 9 |
| tea | 12/03/2019 | 2 | 20 | 9 |
| tea | 13/03/2019 | 6 | 20 | 9 |
| tea | 14/03/2019 | 7 | 20 | 9 |
| Chocolate | 11/03/2019 | 30 | 59 | 1 |
| Chocolate | 11/03/2019 | 4 | 59 | 1 |
| Chocolate | 11/03/2019 | 15 | 59 | 1 |
| Chocolate | 11/03/2019 | 10 | 59 | 1 |
+-----------+------------+-------+-----+------+
sum
场公式公式:
sum =
SUMX(
FILTER(
Table1;
Table1[product] = EARLIER(Table1[product])
);
Table1[sales]
)
rank
字段公式:
rank = RANKX(
ALL(Table1);
Table1[sum]
)
如您所见,我们得到以下排名:
- 1:巧克力
- 5:咖啡
- 9:茶
改进
我想将以前的结果转换为:
- 1:巧克力
- 2:咖啡
- 3:茶
你能帮我改进我的排名系统,得到一个了不起的 1、2、3,而不是这个丑陋且不实用的 1、5、9 吗?
如果您不知道答案,请通过简单地对问题进行投票来帮助 ♥</p>
解决方案
推荐阅读
- flutter - 像primefaces中的树表一样在颤动中创建树表
- swagger - Quarkus + Swagger UI + Keycloak
- sql-server - 为组织的非工作时间创建临时表
- python - 如何使用 Python 迭代时间跨度并计算数据框中的一些值?
- r - 如何仅为面板数据中第一次观察具有正值的人替换缺失值?
- python - 如何找到列表的绝对差异并在最大化优化模型 guobipy 中使用这些值?
- javascript - 当您不能只调用该方法时,如何在 javascript 中调用对本地文件的回调查询?
- java - GCM模式下的AES密码,Java中的空字节IV
- python - 将字符串视为 Python 中的 f 字符串
- asp.net-mvc - 如何在子文件夹中调试 ASPNET Core 应用程序