本文共 1934 字,大约阅读时间需要 6 分钟。
在Analysis Services、Power BI以及Excel中的Power Pivot中,数据分析表达式(DAX)语言是用于数据分析的核心工具。它为数据分析者提供了强大的表达能力,能够显著提升数据处理效率。本文将介绍DAX中的一些常用函数,包括sum(求和)、countrows(统计行数)、average(求平均值)、lookupvalue(匹配)、related(多对一匹配)以及relatedtable(一对多匹配),帮助用户快速完成数据分析任务。
在Power BI或Excel的数据透视表中,度量值是一种动态计算公式,其结果会根据上下文上下文而变化。度量值可以用于汇总、筛选和模型数据的报表中。最常见的度量值函数包括COUNT、SUM、AVERAGE等。
度量值公式可以通过以下方式创建:
COUNT或SUM)作为基础。例如:
TotalSales = SUM(Sales[SalesQuantity])OrderCount = COUNTrows(Sales[OrderID])AverageSales = AVERAGE(Sales[SalesQuantity])
在创建度量值之前,建议先在数据模型中建立一个表格,将所有需要分析的度量值字段放在同一表中。
sum函数用于对特定字段的值进行汇总。
格式:sum('表名'[列名])
例如:
sum(Sales[SalesQuantity])
假设数据表Sales中包含SalesQuantity列,使用sum函数可以计算销售表的销售数量。
结果如下:
countrows函数用于统计表中行数。
格式:countrows('表名'[列名])
例如:
countrows(Sales[OrderID])
假设数据表Sales中包含OrderID列,使用countrows函数可以计算销售表的订单数量。
average函数用于计算某一列数据的平均值。
格式:average('表名'[列名])
例如:
average(Sales[SalesQuantity])
假设数据表Sales中包含SalesQuantity列,使用average函数可以计算销售表的平均销售数量。
在Power BI中,新建列是提升数据分析效率的重要操作。以下是常见的新建列方法。
假设数据表Sales中仅包含SalesQuantity(销售数量),但没有SalesAmount(销售金额),我们可以通过以下方法创建SalesAmount列。
lookupvalue函数lookupvalue函数用于在另一个表中查找特定值。
格式:
lookupvalue('目标表名'[目标列],'目标表名'[查找列],'匹配列所在的表名'[匹配列]) 例如:
lookupvalue('Product'[ProductPrice], 'Product'[ProductCode], 'Sales'[ProductCode]) 这样可以将Product表中的ProductPrice与Sales表中的ProductCode匹配,获取商品价格。然后将SalesQuantity与ProductPrice相乘,得到SalesAmount。
结果如下:
related函数(多对一匹配)related函数用于在多对一关系中获取相关数据。
格式:
related('表名'[列名]) 例如:
related('Sales'[ProductCode]) 这种方法可以直接从Sales表中获取商品信息,而无需单独创建Product表。
假设数据表Sales和Product之间存在一对多关系(Sales表的ProductCode可以映射到Product表的多个记录),我们可以使用relatedtable函数来获取相关数据。
格式:
relatedtable('表名') 例如:
relatedtable('Sales') 这样可以将Sales表与Product表关联起来。然后,可以使用countrows函数统计订单数量。
通过上述方法,我们可以快速完成数据分析任务。Power BI的DAX语言为数据分析者提供了强大的工具,通过合理使用函数可以显著提升分析效率。
转载地址:http://hqizz.baihongyu.com/