https://zhuanlan.zhihu.com/p/64400583 前面利用PowerBI做数据分析的时候都是对整列的字段进行操作,并没有做更细化的分析,比如分析数据的每一行.提取某一行的数据,这在Excel中很容易实现,因为Excel公式是对单元格操作.那么在PowerBI中能不能按行分析呢,答案当然是肯定的,并且比Excel更加灵活,借助这个函数:EARLIER . EARLIER语法 EARLIER(<column>, <number>) 第一个参数是列名 第二个参数…
https://zhuanlan.zhihu.com/p/64421378 Excel中知名度最高的函数当属VLOOKUP,它的确很有用,可以在两个表之间进行匹配数据,使工作效率大大提升,虽然它也有很多局限性.这里不讨论VLOOKUP,而是学习一个和VLOOKUP功能很相似的DAX函数:RELATED. RELATED RELATED是一个值函数,它的参数是一列,RELATED函数也是把一个表的数据通过匹配到另一个表中,前提是使用前应该在两个表之间建立关系. 表之间的关系图如下, 订单表的数据如…
https://zhuanlan.zhihu.com/p/66424209 SUMMARIZE函数非常强大,掌握以后表面上看也非常好用,所以我专门写篇文章介绍一下这个函数,至于是否一定要使用该函数,请看完再决定. SUMMARIZE,单纯从英文语义上看,是汇总.总结的意思,而它的功能,确实也就是汇总,它可以返回一个汇总表. 你可以从官方的文档中查询到该函数的说明, https://docs.microsoft.com/en-us/dax/summarize-function-dax 它的参数非常…
https://zhuanlan.zhihu.com/p/64422393 经常有朋友提出一个问题,然后我给出一个DAX之后,TA又不是很理解,反复多次沟通才能把一个表达式讲清楚.或者TA自己写了一个度量值,可是对输出结果无法理解:我想要的是A,为什么出来的是B? 为了帮助大家快速理解一个相对复杂的DAX,我把平时使用的方法拿出来分享如下. 为了介绍的简洁清晰,以及大部分人的可理解性,本文的DAX并不算复杂,重要的是理解的步骤和思路.(我理解的复杂DAX就是看起来比较长的.经过多层函数嵌套的.计…
https://zhuanlan.zhihu.com/p/64418286 假设有一组数据, 已知每一个产品贡献的利润,如果要计算前几名产品的贡献利润总和,或者每一个产品和利润更高产品的累计贡献占总体的比例,就涉及到累计求和,数据量较小的情况下,在 Excel 中可以轻松实现,毕竟 Excel 是对单元格进行操作. 但是在 PowerBI 中,对整个字段运算很简单,而对每一行的数据进行筛选汇总,却需要动一点小心思,下面就以此表为例介绍几种常用的累计求和方式,并以此案例来进一步掌握几个函数的用法.…
https://zhuanlan.zhihu.com/p/64414205 前面介绍如何使用DAX生成日期表的时候,使用了VAR,有人留言问这个VAR怎么理解,那么这篇文章就来介绍VAR以及它的用法. VAR是VARIABLE的缩写,意思为变量,任何一个编程语言中,变量都是一个非常重要的基础概念,DAX当然也是一种语言,也有变量这个概念.如果以前学过编程,对这个应该很熟悉:没学过也没有关系,看了本文你就理解了. 我们人都有记忆能力,电脑也有记忆能力,并且比人的记忆能力更强大更稳定,那么如何利用电…
https://zhuanlan.zhihu.com/p/57861350 计算个体占总体的比例是一个很常见的分析方式,它很简单,就是两个数字相除,但是当需要计算的维度.总体的范围发生动态变化时,如何灵活且快速的计算出各种占比,还是需要动一点心思的. 本文就通过 DAX 中的 ALL 和 ALLSELECTED 函数来看看在 PowerBI 中是如何快速计算出各种占比的. 数据为虚拟的某网上商城的电子产品的销售记录,我们根据销售额指标来计算某产品的占总体或者类别的比例. 首先写一个销售额的度量值…
https://zhuanlan.zhihu.com/p/121773967 ​数据分析就是筛选.分组.聚合的过程,关于筛选,可以按一个维度来筛选,也可以按多个维度筛选,还有种常见的方式是,利用几个特定的维度值构成的表,作为条件表来筛选原始表. 也就是说,根据一个表,来筛选另外一个表,在PowerBI中怎么做,更具体一点,如何用DAX来完成呢? 假设原始数据记录为一张模拟的订单表: 还有一张表,命名为筛选条件表, 根据这个筛选表,来找出订单表中的记录,即找出1月2日产品A和B.以及1月3日产品B…
https://zhuanlan.zhihu.com/p/55841964 时间可以说是数据分析中最常用的独立变量,工作中也常常会遇到对时间数据的对比分析.假设要计算上年同期的销量,在PowerBI中可以用CALCULATE来写个度量值[上年同期], = CALCULATE([数量],SAMEPERIODLASTYEAR('日期表'[日期])) 这里SAMEPERIODLASTYEAR就是时间智能函数. 时间智能函数和普通函数的区别 时间智能函数与普通的时间或者日期函数的区别是, 日期函数直接依…
https://zhuanlan.zhihu.com/p/64422599 为什么要进行格式化? DAX 是一种函数式语言,正如我们已经学习的或者看到的,DAX 代码中总有一些函数带有几个参数,而参数还可以是其他函数所构成,参数的数量以及嵌套的层数决定了 DAX 代码的复杂度. 使用 PowerBI 进行数据分析时,有三层嵌套的 DAX 代码很常见,四层及以上的嵌套也经常需要用到,如果将所有的代码写在一行上,不做任何格式化的处理,将导致难以理解,即使是自己写的,回头再看或者修改也会一头雾水. 因…