Power BI——CALCULATE函数(对列操作)

一、语法结构:

1.语法:
在这里插入图片描述

其中:
1)第一个参数是计算表达式,可以执行各种聚合运算
2)从第二个参数开始,是一系列筛选条件,可以为空;如果多个筛选条件,用逗号分隔
3)所有筛选条件的交集形成最终的筛选数据集合
4)根据筛选出的数据集合执行第一个参数的聚合运算并返回运算结果

二、案例分析:

步骤1:导入下面这个产品明细表:
在这里插入图片描述
步骤2:新建一个度量值求每种产品的数量:产品数量 = COUNTROWS(‘产品明细’),因为每种产品只有 1 行,所以求产品明细表的行数就相当于求各种产品的数量,把产品名称和该度量值拖拽入矩阵表,这里外部上下文就是表格每行的行标签
在这里插入图片描述
步骤3:筛选条件为空,不影响外部上下文:
1)创建一个度量值:
产品数量 1 = CALCULATE([产品数量])
只是用了第一个参数,筛选条件为空,因为没有内部筛选所以完全依赖外部上下文,出来的结果也和原度量值一致。
在这里插入图片描述
2)说明:介绍 CALCULATE 语法的时候说,第一个参数为聚合运算表达式,为什么这里没有用聚合函数而只用了一个度量值呢?这是因为度量值[产品数量]本身就是一个聚合函数运算,实际上度量值[产品数量 1]等同于这个:产品数量 1 = CALCULATE(COUNTROWS(‘产品明细’)),DAX 函数可以直接引用已经创建好的度量值,可以使 DAX 函数看起来更简洁、更具可读性

步骤4:添加限制条件,缩小上下文
1)建一个度量值:产品数量 2 = CALCULATE([产品数量],‘产品明细’[品牌]=“苹果”)
在这里插入图片描述
2)说明:发现只有苹果的产品计数显示出来,而其他品牌的数据没有了,这是因为 CALCULATE 的第二个参数的限制,只筛选品牌为“苹果”的,限制了外部的上下文,非苹果的产品都不再运算。

步骤5:结合 ALL 函数,扩大上下文
1)新建度量值:产品数量 3 = CALCULATE([产品数量],ALL(‘产品明细’))
在这里插入图片描述
2)说明:这次的数据居然是所有产品的数量,这是因为筛选条件使用了 ALL 函数,ALL(‘产品明细’)的意思是清除产品明细表里的所有筛选,外部筛选器不起作用了,每行统计的都是该表中的所有产品。
*在计算每个产品数量占总产品数量的比重,直接写个度量值:产品占比=[产品数量]/[产品数量 3],产品占比就计算出来了,这就是统计总数的一个功能
在这里插入图片描述
步骤6:重置上下文
1)新建度量值:
产品数量 4 = CALCULATE([产品数量],
all(‘产品明细’[产品名称]),
‘产品明细’[类别]=“手机”)

先用 ALL 函数清除外部上下文,然后又新增了一个筛选条件,类别为"手机"的产品数量,结果如下:
在这里插入图片描述
每一行产品的数量都是 3,正好符合建立这个度量值的逻辑,被 ALL 清除行标签的外部筛选后,从全部产品中统计品类为"手机"的产品的数量,所以每行都返回 3.

三、结论:

通过以上几个简单的例子,可以领会到 CALCULATE 的计算逻辑:通过从第二个参数开始的筛选条件,得到一个数据集合,并利用第一个参数执行聚合运算,这不就是 DAX 要实现的功能——提取有用数据并执行聚合运算。所以说 CALCULATE 几乎就是 DAX 本身,它就是实现 DAX 功能的引擎,并能灵活的操控外部上下文,后面的数据分析也都离不开CALCULATE 的身影。

  • 10
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Power BI中的Calculate函数是一种强大的函数,它可以帮助用户在数据模型中进行复杂的计算和筛选。该函数可以接受多个参数,其中第一个参数是要计算的表达式,后面的参数则是筛选条件。通过使用Calculate函数,用户可以轻松地创建复杂的计算和筛选逻辑,从而更好地理解数据并做出更好的决策。 ### 回答2: Power BI是一款广泛使用的数据可视化工具,可用于分析和展示企业数据。其中的Calculate函数Power BI中最重要的函数之一,它可以对数据进行计算和筛选操作,同时还可以实现复杂的数据分析和可视化操作,以下是对Calculate函数的详细解释。 1. 功能 Calculate函数可以实现多个功能,其中包括: (1) 计算:通过Calculate函数,用户可以对数据进行各种计算操作,如求和、平均、最大值、最小值和计数等。 (2) 筛选:Calculate函数还可以根据用户自定义的筛选条件来筛选数据,比如筛选符合某一条件的数据或排除不符合某一条件的数据。 (3) 聚合:Calculate函数可以聚合数据,将多个数据做加、减、乘或除的运算,并返回结果。 2. 用法 Calculate函数用法较为灵活,主要有以下几种方式: (1) 用法一:计算数据 Calculate函数的主要功能之一是计算数据。例如,我们可以使用以下公式来计算“销售额”的总和: SalesAmount = Calculate(Sum('Sales'[SalesAmount]) (2) 用法二:筛选数据 Calculate函数还可以用来筛选数据,例如我们可以使用以下公式来筛选出“商品销售额”大于1000的商品名称: ProductNames = Calculate(Values('Product'[ProductName]),'Sales'[SalesAmount]>1000) (3) 用法三:聚合数据 Calculate函数还可以用来聚合数据,例如,我们可以使用以下公式来计算“每个地区的平均销售额”: AvgSalesByCity = Calculate(Average('Sales'[SalesAmount]),'Sales'[City]='Seattle') 3. 参数 Calculate函数包含两个参数:第一个参数是所需计算的公式或表达式,对应的是计算逻辑;第二个参数是筛选条件或表达式,对应的是筛选条件,表示计算结果要基于哪些数据。 例如,使用以下公式来计算在“New York”城市的“销售额”总和: SalesAmountInNewYork = Calculate(Sum('Sales'[SalesAmount]),'Sales'[City]="New York") 总之,Power BICalculate函数是实现数据计算、筛选和聚合的重要函数之一。通过正确的使用Calculate函数,您可以轻松计算和展示您的数据,从而帮助您更好地分析和理解数据的本质。 ### 回答3: Power BI是一款业内领先的商业智能平台,它提供了丰富的功能和工具,包括数据可视化、报告分析、数据建模等。而其中一个非常重要的功能就是calculate函数。在Power BI中,calculate函数可以说是非常重要的一个函数,它有着非常广泛的应用,可以用来从基础数据中生成完全新的报表、图形和指标。下面我们来详细了解一下Power BI中的calculate函数Calculate函数基本语法 在Power BI中,如果想利用calculate函数进行数据分析,则需要了解calculate函数的基本语法,其基本语法如下: Calculate([expression], [filter1], [filter2], …) 其中,[expression]是计算表达式,[filter1]、[filter2]等是过滤器,我们可以添加任意多的过滤器。calculate函数的目的是按照规定的过滤器计算表达式,并返回结果。 Calculate函数用途 下面我们来了解一下calculate函数Power BI中的常见用途。 1、筛选数据 calculate函数可以用来筛选数据,比如我们可以利用它来汇总并计算特定日期范围内的销售额、获取最新的销售数据等等。 2、计算变量 calculate函数还可以用来计算变量,例如我们可以利用它来计算销售额、利润率、增长率等指标。 3、创建聚合表 calculate函数还可以用来创建聚合表,改变数据模型中的原始数据。 4、了解数据分布 在进行数据分析时,人们常常需要了解一组数据的分布,并对这些数据进行进一步的分析和预测。calculate函数可以用来计算分布,进而帮助我们更好地理解和预测数据。 5、创建计算列和计算表 利用calculate函数,我们可以在Power BI中创建计算列和计算表,这对于数据分析和建模非常重要。例如我们可以利用calculate函数创建新的列用于计算总销售额、平均销售额、客户数量等等。 总结 Power BIcalculate函数是一个非常重要的函数,可以帮助我们快速、准确地分析数据。通过了解calculate函数的基本语法和常见用途,我们可以在Power BI中更加高效地进行数据分析和建模,为企业决策提供更多的支撑和帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值