首页 文章

行筛选后的新客户

提问于
浏览
0

我在Power BI(DAX模式2015)中使用了下面的DAX代码,它可以很好地获得新客户 .

如果客户使用Product_1或Product_2,则客户将被视为新的 . 现在我想创建相同的,但这次分别与每个产品相关 . 因此,如果客户首次开始使用Product_1(不考虑Product_2),那么新客户PRODUCT_1将采取措施 .

在数据模型FACT表中,我有产品1和2的列,如果在一个月内仅使用产品2,那么产品1在同一行中是空白的,反之亦然 . 我试图添加 Filter(MAIN;MAIN([Product_1]>0)) ,但它给了我奇怪的结果 . 新客户全年重复,而不是只计算一次 .

Absolute_NEW_Customers(PRODUCT_1) = 
COUNTROWS ( 
         FILTER(
                ADDCOLUMNS(VALUES(MAIN[Customer No]);"PreviousSales";
                        CALCULATE(COUNTROWS(MAIN);FILTER(ALL('DateKey');DateKey[Date]<MIN('DateKey'[Date]))));
       [PreviousSales]=0))

1 回答

  • 1

    我终于找到了有用的功能 . 有必要使用 "CALCULATETABLE" 函数来过滤整个表 . 以下是最终代码:

    Absolute_NEW_Customers(Product_1) = 
    COUNTROWS ( 
    FILTER(
           ADDCOLUMNS(
                     CALCULATETABLE(VALUES(MAIN[Customer No]);FILTER(MAIN;NOT ISBLANK(MAIN[Product_1])));"PreviousSales";
                            CALCULATE(COUNTROWS(CALCULATETABLE(MAIN;FILTER(MAIN;NOT ISBLANK(MAIN[Product_1]))));FILTER(ALL('DateKey');DateKey[Date]<MIN('DateKey'[Date]))));
           [PreviousSales]=0))
    

相关问题