• #POWERBI_指标监控(第一部分,连续上升或下降天数)


    一:数据源

    模拟数据为三款奶茶销量的日销售数据源,日期是23.8.24-23.8.31。A产品为连续7天,日环比下降,B产品为连续3天,日环比下降,C产品为连续2天,日环比下降。

    二:建立基础度量值

    首先,我们建立两个基础度量值,计算我们的产品销量和日环比。

    1
    2
    3
    4
    产品销量 = CALCULATE(SUM('数据源'[销量]))
    产品销量日环比 =
    VAR T1 = CALCULATE([产品销量],DATEADD('日期表'[Date],-1,DAY))
    RETURN DIVIDE([产品销量]-T1,T1)  

    三:建立异常下降度量值

    1
    2
    3
    4
    5
    6
    7
    8
    产品销量_是否最近N天持续下降 =
        VAR N='参数'[参数_值] ///控制天数,可以是一个固定的值,也可以是一个字段参数,动态的值
        VAR T1 =
            SUMMARIZE(FILTER('日期表','日期表'[Date]>=MAX('日期表'[Date])-N&&'日期表'[Date]<=MAX('日期表'[Date])-1),'日期表'[Date])
        VAR T2 =
            ADDCOLUMNS(T1,"产品日环比",[产品销量日环比])
        VAR T3= FILTER(T2,[产品销量日环比]<0)
        RETURN IF(COUNTROWS(T3)=N,"连续下降")

     

    四:异常下降代码解释
    首先,VAR N 是一个数值,可以是一个具体的值,如果是3,那么就是检测是否为连续3天下降,如果是7,那么就是检测是否为连续7天下降。这里使用的是参数表的值,也就意味着可以让报表使用者,自行选择对应的下降指标去查看数据。
    然后,VAR T1 是一个表,但是他只有一个日期列,日期列是根据数据源的最大日期,往前倒退N天。这里我们用powerbi的新建表去看看这行代码,返回的是什么表。如下所示,返回的是数据源表最大日期,往前倒退7天的一个日期表。

    再然后,VAR T2 是在T1日期列的基础上,新增一列,列名是"产品日环比",值是我们前面计算的基础度量值[产品销量日环比]。现在我们T2有两列了,一列是日期,一列是销量日环比
    再然后,  VAR T3 是在T2表的基础上,我们用FILTER把日环比小于0的行数抓出来,也就是我们把日环比小于0,下降的天数的行给筛选出来。
    最后一步,就是收尾的一步了,既然我们已经把日环比小于0的行,找出来了。我们对他的行进行计数,再和我们前面的N去进行对比,如果和N相等就意味着所有的天数均在下降,符合我们RETURN的IF语句,就输出"连续下降",如果不符合连续下降,我们就不返回值。(这里我们思考一下,以B产品为例,如果N等于3,而实际B产品日环比小于0的只有2天,所以这里返回的值就是2,那么2不等于3,所以是不会返回值的,反之如果N=2那么,2=2就会正常返回”连续下降”)
    这样我们就可以灵活的查看异常指标了。

    我们来看一下简单的结果展示。准确的抓到了连续2天,连续3天,以及连续7天下降的产品。

    如果对前面讲的东西不太理解,可能是咱们基础比较弱,可以补充补充基础知识再来看。

    有了这个模块的知识,我们就可以根据自己的思路,去构建异常指标的看板了,有了思路,剩下的就请交给DAX吧。

    ENJOY DAX -SIMONE

     

  • 相关阅读:
    zookeeper
    k8s笔记22--使用fluent-bit采集集群日志
    安全狗助力厦门“单一窗口”开展网络安全应急演练
    复现SCI文章系列教程 | 文章复现一(IF 7.3):文章讨论与文章分析套路讲解
    中小企业平台安全建设如何落地
    Linux——进程间信号(超级详解!!)
    TypeScript学习笔记十二:条件类型、内置条件类型
    SAM + 用于文本到图像修复的稳定扩散
    简述JDK,JRE,JVM的关系
    FPGA工程师面试——FPGA基础知识24题
  • 原文地址:https://www.cnblogs.com/simone331/p/17730677.html