Power BI 中的计算列2024 年 9 月 20 日 | 阅读 11 分钟 计算列是 Power BI 分析能力的基础,使其成为商业智能和数据分析中强大的工具。Power BI 的一个重要组成部分是计算列,它们是增强和塑造数据模型的游戏规则改变者。本文将向我们介绍计算列、语法、函数、if else 和嵌套 if 语句。 计算列如何工作?在 Power BI 中,计算列是表中用户定义的列,其值来自数据分析表达式 (DAX) 公式。与静态或显式导入的列不同,计算列不会在数据集中存储预先存在的数据。相反,它们动态响应筛选器、切片器和其他用户活动的变化,并根据公式计算结果。 Power BI 的计算列在改进数据模型方面至关重要。它们允许用户添加原始数据中不一定存在的计算数字。这种改进不仅仅是简单地添加更多列;它涉及创建智能的、上下文感知的计算,从而提供对数据更深入的理解。 用户可以通过向数据模型添加计算列来增强其工作的分析能力,超越原始数据所能实现的范围。当需要更多上下文信息或转换才能得出完整结论时,这尤其有用。 计算列的重要用途![]()
表格可以使用 Power BI 计算列中的 DAX 公式添加额外数据。与标准列相反,计算列在数据导入期间从提供的表达式动态获取其值。通过允许用户执行独特的计算、连接数字或从现有列中提取重要信息,这些列对于改进数据模型至关重要。 Power BI 中计算列的语法和结构语法概述Power BI 使用数据分析表达式 (DAX) 语言来创建计算列,该语言旨在处理关系数据,并且与 Excel 公式有一些相似之处。计算列语法逻辑严谨,包含运算符、函数和指向数据模型列的指针。以下是总结
计算列公式的结构让我们分解一下计算列公式的结构 1. 用户定义名称 (ColumnName)
在这种情况下,计算列名为“TotalSales”。 2. 赋值运算符 (=)
在这种情况下,“SalesAmount”和“Discount”列的总和被分配给计算列“TotalSales”。 3. DAX 表达式 ([Expression])
在这里,将“Quantity”和“UnitPrice”列中的值相乘即可得到计算列“TotalSales”。 计算列公式示例 让我们看一个例子,我们希望使用以下公式构造一个名为“ProfitMargin”的计算列 ![]()
此公式将“Profit”列除以“Revenue”列以确定利润率。通过使用“DIVIDE”函数处理分母(Revenue)可能为零的情况,可以避免潜在错误。 附加信息
计算列的创建Power BI Desktop 中的“新建列”功能(可从“报表”、“数据”或“模型”视图访问)用于构造计算列。与 Power Query 编辑器中通过选择“新建列”创建的自定义列不同,计算列处理已导入模型的数据。此方法提供了一种灵活且引人入胜的方式,可以直接在 Power BI 环境中操作和丰富数据。 创建计算列的分步过程 第 1 步:打开 Power BI Desktop
第 2 步:导航到数据视图
第 3 步:选择表格
第 4 步:单击“新建列”
![]() 第 5 步:定义列名
第 6 步:编写 DAX 公式
![]() 了解在数据转换阶段在 Power Query 编辑器中创建的自定义列与计算列之间的区别至关重要。同时,两者都需要创建列。Power BI 的计算列对加载的数据进行操作,以实现实时计算和交互,而 Power Query 的自定义列是数据导入过程的一个组成部分。 计算列使用 DAX,这是一种专门为 Power BI Desktop 关系数据处理设计的计算语言。DAX 拥有包含 200 多个函数、运算符和结构的广泛库,允许用户为各种分析需求创建复杂的公式。与 Excel 公式一样,这些公式与已切片或筛选的报告数据进行交互。 示例场景 让我们回顾一个真实的场景,展示计算列的强大功能。介绍 Vardhan,一位服装经理,他的目标是编制一份详细的报告,显示每个商品的整体利润。他的表格中有不同的字段:州、类别、城市和产品名称。另一方面,Vardhan 希望报告以同一行中的单一值显示产品名称和类别,以及通过从成本中减去销售价格确定的总利润。 连接产品全名的值销售经理 Vardhan 使用计算列连接“产品名称”和“类别”列中的值。DAX 公式为 ![]() ![]() 此公式创建一个名为 Product FullName 的新列,其中产品名称和类别用连字符组合在一起。 计算利润 要计算利润,请从销售价格中扣除成本价格并添加另一个计算列。以下是 DAX 公式 ![]() 此算法通过根据销售和成本数字动态计算每行的利润来生成利润列。 Power BI 中计算列的用例和示例Power BI 的计算列是灵活的工具,具有许多应用程序,可用于转换数据、增强数据集和生成有洞察力的分析。让我们检查各种上下文中的实际示例 1. 盈利能力分析场景:确定销售数据集中每个产品的利润率。 DAX 公式示例 好处
2. 时间智能场景:假设您有一个用于计算年初至今 (YTD) 销售额的列。 DAX 公式示例 好处
3. 客户细分场景:根据客户的总购买量,将客户分为高价值、中价值和低价值细分。 DAX 公式示例 好处
4. 文本连接场景:将类别和产品名称合并到一个列中。 DAX 公式示例 好处
5. 自定义层次结构场景:根据季度和年份创建唯一的日期层次结构。 DAX 公式示例 YearQuarter = 'Date'[Year] & " Q" & 'Date'[Quarter] 优点
6. 评级或评分场景:根据产品的销售情况进行评级。 优点
7. 年龄计算示例:使用客户的出生日期确定每个客户的年龄。 DAX 公式示例 好处
使用 IF 语句创建计算列对于条件语句,使用 IF 函数。如果条件为真,它返回一个值;如果为假,它返回一个不同的值。 产品表
DAX 公式 ![]() 计算如何工作?销售额比较
标志分配
示例解释
使用多个 IF 语句创建计算列通过在计算列中使用多个 IF 语句,您可以根据多种情况在 Power BI 中开发更复杂的推理。在 IF 语句中,对条件进行评估,并根据条件为真或假返回给定值或计算。现在,让我们研究如何在计算列中利用多个 IF 语句 多个 IF 语句语法要在计算列中使用多个 IF 语句,通常的语法如下 示例:销售业绩分类 假设我们有一个包含“Revenue”列的“Sales”表。我们希望构造一个计算的“SalesCategory”列,将销售业绩分为各种组。
表格表示
重要注意事项
从另一个表创建 Power BI 计算列在 Power BI 中,您可以使用 DAX(数据分析表达式)公式根据另一个表中的值在表中构建计算列。通常,为了实现这一点,需要在表之间建立关系,然后使用这些关系从相关表中检索或计算值。让我们详细分析该过程。 场景:使用表 B 中的值在表 A 中创建计算列 步骤 1:识别表之间的连接
步骤 2:导航到“Sales”表
步骤 3:构造新的计算列
步骤 4:编写 DAX 方程
![]() 步骤 5:按 Enter 键
步骤 6:切换到报表视图
结果表 ![]() 关键点
|
我们请求您订阅我们的新闻通讯以获取最新更新。