美文网首页
复杂的占比

复杂的占比

作者: BI罗 | 来源:发表于2020-03-20 12:00 被阅读0次

技巧是返回当前层级的字段,以及利用isfiltered判断层级的顺序

Value_For_Table:=
//计算逻辑:分子分母的取值会根据层级而变,在category或keyword层级求的是自家产品与市场全部的百分比,在F_Value[Competitor_NX_Base]或brand层级下的分母是这个层级的总数,百分比求的是自家产品或非其他产品与这一层的占比
//bns筛选后的逻辑:筛选某个brand NXGroup 或者SKu都会返回其所属的keyword,显示竞品的占比,而自家产品的值就只是新品的值
//bns筛选后,cns层级不足100%原因是,NX的部分少了,因为选择一个brand,层级只显示一个NX的brand,但是分母全部都算进去
VAR t =
    CALCULATE ( MIN ( D_Product[new_iNXtiative_sos_date] ) )
VAR d =
    DATE ( YEAR ( t ), MONTH ( t ), 1 )
VAR brand =
    VALUES ( D_Product[brand_name_en] )
VAR cate =
    VALUES ( D_Product[category_name_en] )
VAR manu =
    CALCULATE ( MAX ( F_Value[Competitor_NX_Base]), ALL ( D_Product ),ALL(F_Value[rank] ), ALL(D_Product[product_name_cn]),ALL(D_Product_Search[rpc_code]))
VAR keyword =
    CALCULATETABLE (
        VALUES ( F_Value[keyword] ),
        ALL(F_Value[Competitor_NX_Base]),
        ALL(F_Value[rank]),
        ALL ( F_Value[brand_en_org] )      
    )          //当bns筛选后,获取的keyword列值,用来判断每个brand所属的keyword


VAR x =
    IF (
        OR (
            ISFILTERED ( 'F_Value[brand_en_org] ), //2个isfiltered的顺序很重要
            ISFILTERED (F_Value[Competitor_NX_Base])
        ),
        IF (
           manu = "NX",
            CALCULATE ( SUM ( 'F_Value[metric_value] ) ),
            IF (
                AND (
                   OR( manu = "Competitor",manu="Base"),
                    CALCULATE (
                        MAX ( 'F_Value[keyword] ),
                        ALL ( D_Product ), ALL(D_Product_Search[rpc_code])
                    )
                        IN keyword          //判断bns筛选后,当前的brand的keyword是否属于这个keyword的列值
                ),
                CALCULATE (
                    SUM ( 'F_Value[metric_value] ),
                    ALL ( 'D_Product'[brand_name_en] ),
                    ALL ( D_Product[new_iNXtiative_project_name] ),
                    ALL ( D_Product[product_name_en] ),
                    ALL ( 'D_Product'[is_new_iNXtiative_flag] ),
                    ALL('D_Product'[category_name_en]), 
                    ALL(D_Product[product_name_cn]),
                    ALL(D_Product_Search[rpc_code])
                )
            )
        ),
        CALCULATE (
            SUM ( 'F_Value[metric_value] ),
           F_Value[Competitor_NX_Base]= "NX"
        )
    )
VAR y =
        CALCULATE (
            SUM ( 'F_Value[metric_value] ),
            ALL ( 'D_Product'[brand_name_en] ),
            ALL ( D_Product[new_iNXtiative_project_name] ),
            ALL ( D_Product[product_name_en] ),
            ALL ( 'D_Product'[is_new_iNXtiative_flag] ),
            ALL (F_Value[Competitor_NX_Base] ),
            ALL ( F_Value[brand_en_org] ),
            ALL(F_Value[rank]),
            ALL('D_Product'[category_name_en]),
             ALL(D_Product[product_name_cn]),
            ALL(D_Product_Search[rpc_code])
        )
    
VAR actual =
    DIVIDE ( x, y ) 
VAR sos =
CALCULATE(
    DIVIDE (
        //分子
       IF (
        OR (
            ISFILTERED ( 'F_Value[brand_en_org] ),
            ISFILTERED (F_Value[Competitor_NX_Base])
        ),
        IF (
           manu = "NX",
            CALCULATE ( SUM ( 'F_Value[metric_value] ) ),
            IF (
                AND (
                   OR( manu = "Competitor",manu="Base"),
                    CALCULATE (
                        MAX ( 'F_Value[keyword] ),
                        ALL ( D_Product )
                    )
                        IN keyword          //判断bns筛选后,当前的brand的keyword是否属于这个keyword的列值
                ),
                CALCULATE (
                    SUM ( 'F_Value[metric_value] ),
                    ALL ( 'D_Product'[brand_name_en] ),
                    ALL ( D_Product[new_iNXtiative_project_name] ),
                    ALL ( D_Product[product_name_en] ),
                    ALL ( 'D_Product'[is_new_iNXtiative_flag] ),
                    ALL('D_Product'[category_name_en]), 
                    ALL(D_Product[product_name_cn]),
                    ALL(D_Product_Search[rpc_code])
                )
            )
        ),
        CALCULATE (
            SUM ( 'F_Value[metric_value] ),
           F_Value[Competitor_NX_Base]= "NX"
        )
    ),
        //分母
        CALCULATE (
            SUM ( 'F_Value[metric_value] ),
            ALL ( 'D_Product'[brand_name_en] ),
            ALL ( D_Product[new_iNXtiative_project_name] ),
            ALL ( D_Product[product_name_en] ),
            ALL ( 'D_Product'[is_new_iNXtiative_flag] ),
            ALL (F_Value[Competitor_NX_Base] ),
            ALL ( F_Value[brand_en_org] ),
            ALL(F_Value[rank]),
            ALL('D_Product'[category_name_en]),
             ALL(D_Product[product_name_cn]),
            ALL(D_Product_Search[rpc_code])
        )
    
    ),FILTER ( ALL ( 'D_Date'[Date] ), 'D_Date'[Date] >= d ),
            ALL ( 'T_Slicer' )
        )

RETURN
     IF ( SELECTEDVALUE ( 'T_Slicer'[Time Period] ) = "SOS TD", sos, actual )

相关文章

  • 复杂的占比

    技巧是返回当前层级的字段,以及利用isfiltered判断层级的顺序

  • Filecoin 挖.矿 远比 Bitcoin 复杂

    观 点 Filecoin 挖矿比 Bitcoin要复杂得多,需要专业的维护 挖矿收益只占 Filecoin 矿工收...

  • 21.数据透视高级应用

    【六】自动计算占比和排名 应用场景: 计算公司规模在整个行业的占比,行业之间的占比,部门之间的占比和排名 数量占比...

  • 占比

    如果事事都能被谅解,被宽容,那还有什么过不去,放不下,原则和底线也不需要坚守 毁约的人总是最先找尽借口,慌慌张张,...

  • 2-3需求分级

    一、重要性 重要性公式 = 占比1*分值 + 占比2*分值 + 占比3*分值 产品生命周期不同,需求分类的占比不同...

  • 年化12%的资产配置原则

    一、资产配置原则 P2P投资占比60%,基金占比20%,股票占比10%,其他类型投资占比10%,逐步清退银行理财。...

  • 周0701-0705

    作业 小结: 1、月对帐(各店铺销售,折扣及成本,调货占比,新旧货占比,活动占比) 2、跨境选款及占单 3、首页页...

  • 2018-10-26

    数据透视高级应用 今天学习数据透视表的值显示方式,可以自动计算占比和排名,公司占比、行业占比、部...

  • iOS有关的链接

    iOS 系统各个版本的占比查询 iOS 系统各种设备中各种系统占比查询各中设备各种系统的占比

  • 品类分析

    有缝休闲,销售占比11,库存占比21,面积占比24周转940天。 问题:库存占比大,面积比大,周转时间长 原因:库...

网友评论

      本文标题:复杂的占比

      本文链接:https://www.haomeiwen.com/subject/lcfjyhtx.html