Power BI 数据分析核心技术

目录

1、计值上下文之行上下文(迭代处理数据)

2、计值上下文之行上下文(迭代处理数据)

3、详解迭代器运算原理(像循环一样工作)

4、筛选函数FILTER应用(筛选表迭代器函数)

5、重构筛选环境CALCULATE(DAX公式核心函数)

6、CALCULATE叠加筛选(在筛选上下文环境下再做筛选)

7、CALCULATE调节器ALL函数-1(清除单列筛选器)

8、CALCULATE调节器ALL函数-2(清除多列筛选器)

9、CALCULATE调节器ALL函数-3(清除所有筛选器)

10、CALCULATE调节器ALL函数-4(隐式ALL应用)

11、CALCULATE调节器ALLEXCEPT函数(排除法清除筛选器)

12、CALCULATE调节器ALLSELECTED函数(筛选条件参数化)

13、CALCULATE调节器KEEPFILTERS(阻止清除筛选器)

14、CALCULATE调节器USERELATIONSHIP(激活关系)

15、CALCULATE调节器CROSSFILTER(修改筛选方向)

16、CALCULATETABLE函数应用(独立修改筛选器后的表)

17、TREATAS函数创建虚拟关系(让关系无中生有)


    

上下文,从语言的角度看就是指文章上下文的意思,叫语言环境(语境)更好。比如:“很累吗?”这句话是什么意思,要根据当时的对话环境来推断。任何DAX表达式在不同上下文中都可以得到不同结果,上下文就是指计算公式的“环境”。计值上下文分为行上下文筛选上下文

1、计值上下文之行上下文(迭代处理数据)

行上下文,作用是迭代表的行并计算值,存在于迭代函数计算列中。行上下文不是用来做筛选的,仅向DAX指示使用表的哪一行。下面分别解释计算列和迭代函数中的行上下文。

计算列中的行上下文通过迭代计算之后,呈现在对应的行位置。如下所示:

迭代函数中的行上下文通过迭代计算之后,再做聚合处理如下所示:

金额: =

SUMX(

    '销售表',

    '销售表'[数量]*5

)

行上下文的本质就是迭代表的每一行数据进行计算,然后再做聚合、筛选等处理,或者不做处理(比如添加计算列- ADDCOLUMNS)。

2、计值上下文之行上下文(迭代处理数据)

任何一个DAX表达式都是在一个上下文环境中计算的,上下文是公式计算的“环境”。可以将公式的计值上下文看作发生计算的单元格的周围环境。所以尽管公式相同,但结果不同。因为相同的代码作用于不同的数据子集。这种上下文可以称为“筛选上下文”

无论字段是在视觉对象的行或列上,还是在切片器和(或)页面/报表/筛选器窗格上,抑或在报表中创建的任何其他类型的筛选器上——这无关紧要,它们都共同定义了一个筛选上下文,DAX使用它来计算表达式。在行或列上显示字段只改变视觉效果,对DAX的计算方式没有任何影响。

3、详解迭代器运算原理(像循环一样工作)

所谓迭代,在计算机中,可以对一组数据中的每个对象执行操作。那么迭代器就可以通俗的理解为盛放迭代对象的容器。那么迭代器函数就是指具有迭代功能的函数。有迭代运算就可以理解为有行上下文,有行上下文就有迭代运算。在DAX中有很多有用的迭代器函数。迭代器函数返回的可能是一个单值,也可以是一表格。

比如,在数据模型某个表中添加计算列,其实也相当于是一个迭代器的计算。添加计算列也有对应的函数ADDCOLUMNS,它就是一个迭代器函数。

但要告诉大家一个沉重的事实,迭代思想只是为了让学习者更容易理解才这么定义的。其内部引擎不是用的迭代方式。如果是,海量数据运行时计算速度不可能那么快。

4、筛选函数FILTER应用(筛选表迭代器函数)

上一小节讲解了迭代器,为了加强学习者的理解,我们再学习应用频率比较高的迭代器函数FILTER。

函数结构:FILTER(Table,FilterExpression)

参数说明:

Table       要过滤的表。该表也可以是产生表的表达式。

FilterExpression   一个布尔表达式,将对表的每一行计算,返回为TURE则保留对应的行记录。返回FALSE则不保留。最后将保留下来的记录将形成一个新的子集

  • 0
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值