首页 > 解决方案 > power bi:多行的不同计算

问题描述

请您帮我对 Power BI 中的 2 行应用不同的计算:

也就是说,要转换此表:

client_ids products purchased month
1          0        0         jan
2          1A       1         jan
2          1B       1         jan
3          0        0         jan
4          0        0         jan
5          0        0         feb

进入这个:

purchased jan feb
1         1   
0         3   1

也就是说,要执行计算:

-on 购买 = 0 - 按月计数,客户

-on 购买 = 1 - 每月计数不同,客户

谢谢你。

我使用的方法:

- 在查询编辑器中创建对主查询的引用

- 删除包含产品的列

- 删除重复项

但这会使下载报告变慢。

标签: powerbipowerbi-desktop

解决方案


要返回预期的输出,您可以使用两个步骤从数据中获取结果:

假设这是您的日期表:

在此处输入图像描述

首先,计算与今天不同的月份以找到最近的月份(您可以根据您的数据性质尝试其他方法):

Mon Diff = (YEAR(NOW()) - YEAR(Sheet1[date])) + (MONTH(NOW()) - MONTH(Sheet1[date]))

其次,将最近一个月列为当前:

rank = 
var ranking = RANKX(Sheet1,Sheet1[Mon Diff],,,Dense)
return
SWITCH(ranking,1,"prior",2,"current")

第三,从购买列中生成不同的值

Table = DISTINCT(Sheet1[purchased])

第四,计算前一个月0和1的频率,二月同理

  Jan = CALCULATE(COUNT(Sheet1[rank]),Sheet1[rank]="prior",
        Sheet1[purchased]=EARLIER('Table'[purchased])) 


 Feb = CALCULATE(COUNT(Sheet1[rank]),Sheet1[rank]="current",
        Sheet1[purchased]=EARLIER('Table'[purchased])) 

infor 的新表(1 月,购买2出现 2 次而不是 1 次):

在此处输入图像描述


推荐阅读