PowerBI-其他行中基于条件的总和

时间:2019-03-30 22:36:51

标签: powerbi powerbi-desktop

我已经在excel中做到了这一点,但是对PowerBI来说是新手,所以我在这里绞尽脑汁。我有一个包含销售数据的表。

Sales Type | Customer | Sales
Cat 1      | Cust 1   | $10000
Cat 1      | Cust 2   | $10000
Cat 1      | Cust 3   | $10000
Cat 1      | Cust 1   | $10000
Cat 2      | Cust 1   | $1000
Cat 2      | Cust 2   | $2000
Cat 2      | Cust 3   | $3000
Cat 2      | Cust 1   | $9000

我要寻找的输出是类别1中销售额大于或等于20,000美元的客户来自类别2的销售额与类别1中收入低于20,000美元的客户之间的比率。

在此示例中,客户1的Cat 1销售额为20,000美元,而客户2和3则没有。 第1类,第2类销售额为$ 20,000或更高的客户= $ 10000 客户在Cat 1,Cat 2中的销售额低于$ 20,000的客户= $ 5000

在Cat 1的销售额为$ 20,000或更高时,(10000-5000)/ 5000 = Cat 2的销售额增加1.0或100%。

我希望这很清楚。预先谢谢你!

1 个答案:

答案 0 :(得分:0)

首先,我们创建一个新表:

SalesPerCat = GROUPBY(Sheet1;Sheet1[ Customer ];Sheet1[Sales Type ];"SumCat";SUMX(CURRENTGROUP();Sheet1[ Sales] ))

然后,在上方添加一个新列。当Cat 1高于20000时,它将接管该值:

Above = IF(SalesPerCat[Category] = "Cat 2" && LOOKUPVALUE(SalesPerCat[SumCat];SalesPerCat[Customer]; SalesPerCat[Customer];SalesPerCat[Category]; "Cat 1";0) >=20000; SalesPerCat[SumCat];0)

相反,对于20000以下的所有内容,新列:

Below = IF(SalesPerCat[Category] = "Cat 2" && LOOKUPVALUE(SalesPerCat[SumCat];SalesPerCat[Customer]; SalesPerCat[Customer];SalesPerCat[Category]; "Cat 1";0) <20000; SalesPerCat[SumCat];0)

表结果: enter image description here

最后进行“比率”测量:

Ratio = (SUM(SalesPerCat[Above]) - SUM(SalesPerCat[Below]))/SUM(SalesPerCat[Below])