快速度量建议

快速度量建议有助于使用自然语言创建 DAX 度量,而无需使用模板或从头开始编写 DAX。

Screenshot of an example of a DAX measure suggestion.

此功能可用于快速开始创建常见 DAX 度量方案,例如:

  • 聚合列(可选筛选器)
  • 行计数(可选筛选器)
  • 每个类别的聚合
  • 数学运算。
  • 选定值
  • If 条件
  • 文本操作
  • 时间智能
  • 相对时间筛选值
  • 最常见/最不常见的值
  • 前 N 个筛选值
  • 某个类别的前 N 个值
  • 信息函数

启用度量建议

要启用该功能,首先需要导航到 Power BI Desktop 的“选项”菜单,然后打开“快速度量建议”的预览版开关:

Screenshot of how to enable preview from the options menu of Power BI Desktop.

启用该功能后,可以通过从功能区的“开始”或“建模”选项卡启动“快速度量”,然后选择“建议”来访问快速度量建议:

Screenshot of how to access the feature from the suggestions tab of the Quick measure pane.

在此处可以描述你要创建的度量,然后点击“生成”(或按 Enter 键)获取 DAX 度量建议:

Screenshot of an example of a DAX measure suggestion.

始终应该验证 DAX 建议,以确保它们满足需求。 如果你对建议的度量感到满意,可以单击“添加”按钮将该度量自动添加到模型中。

自然语言示例

为了帮助演示该功能,下面提供了每个受支持度量方案的一些自然语言示例。

聚合列

将聚合应用于列以返回单个值。 支持的聚合包括总和、计数、非重复计数、不包括空白值的非重复计数、平均值、最小值、最大值、平均值、方差和标准偏差。

示例:

  • 显示销售总额
  • 获取销售总额
  • 产品计数
  • 有多少产品
  • 唯一用户数
  • 不包括空白值的非重复用户数
  • 获取唯一用户数并排除空白值
  • 最高价格
  • 平均年龄

可选筛选器

对于聚合列,还可以指定一个或多个筛选条件。 如果有多个筛选条件,可以指定是需要为筛选器使用交集 (&&/AND) 还是并集 (||/OR)。

示例:

  • 伦敦有多少客户
  • 2022 年总销量
  • 计算“产品”为“Word”且“区域”为“北部”的销售额
  • “产品”为“Word”或“区域”为“北部”的销售额
  • 按照条件“产品”为“Word”&&“区域”为“北部”筛选的销售额
  • “产品”为“Word”||“区域”为“北部”的销售额

行计数

统计指定表中的记录数。 如果只有一个表,则无需指定表。

示例:

  • 统计销售表的记录数
  • 统计销售表
  • 销售表行计数
  • 统计销售表的行数

可选筛选器

对于行计数,还可以指定一个或多个筛选条件。 如果有多个筛选条件,可以指定是需要为筛选器使用交集 (&&/AND) 还是并集 (||/OR)。

示例:

  • 统计“产品”为“Word”且“区域”为“北部”的销售表的行数
  • 统计“产品”为“Word”或“区域”为“北部”的销售表
  • 统计按照条件“产品”为“Word”&&“区域”为“北部”筛选的销售表的记录数
  • 获取“产品”为“Word”||“区域”为“北部”的销售表的行计数

每个类别的聚合

计算某个类别中每个非重复值的度量,然后聚合结果以返回单个值。 支持的聚合包括平均值、加权平均值、最小值、最大值、方差。

示例:

  • 每家店铺的平均销售额
  • 每个类别的按优先级加权的平均分数
  • 每个产品的最低分数
  • 每家店铺的最大件数

数学运算。

对数值列、度量或聚合列执行数学运算。 对于跨表中列的方案,可以对结果求平均 (AVERAGEX) 或求和 (SUMX) 以返回单个值。

示例:

  • 销售额 - 销货成本
  • 销售额减销货成本
  • 销售额除以目标收入乘以 100
  • 销售额/目标收入 * 100
  • 欧盟销售额 + 日本销售额 + 北美销售额
  • 对于销售表中的每一行,计算“价格 * 件数”的结果,并将结果求和
  • 对于销售表中的每一行,将“价格 * 件数”的结果求和
  • 对于销售表中的每一行,计算“价格 * 折扣”的结果,然后求平均值
  • 对于销售表,获取“价格 * 折扣”的平均值

选定值

获取列的选定值。 此聚合通常与单选切片器或筛选器搭配使用,使度量返回非空白值。

示例:

  • 选定的产品是什么
  • 选择了哪个产品
  • 产品的选定值

If 条件

根据条件返回值。 如果你想要返回字符串值,需要使用双引号。 条件可使用以下比较运算符:=、==、<>、<、>、<=、>=

示例:

  • 如果销售额 > 10,000,则返回“高销售额”,否则返回“低销售额”
  • 如果销售额大于 10,000,则显示“高销售额”,否则显示“低销售额”
  • 如果产品的选定值为空白,则显示“未选择产品”,否则显示选定的产品
  • 如果选定的产品 = Power BI,则显示“PBI”,否则显示“其他”

文本操作

对列、度量或聚合列执行文本操作。 对于跨表中列的方案,我们将合并 (CONCATENATEX) 结果以返回单个值。

示例:

  • "选定的产品是" & 选定的产品
  • 显示 "选定的产品是",后面连接选定的产品
  • Header_measure & " - " & Subheader_measure
  • 对于地理位置维度表中的每一行,连接州 & ", " & 市,并组合结果
  • 对于地理位置维度表中的每一行,获取州 & ", " & 市,并合并结果

时间智能

这些时间智能方案需要使用正确标记的日期表或自动日期/时间层次结构。 对于 YTD 方案,可以指定“会计”或“会计日历”以基于会计日历(6 月 30 日结束)进行计算。

示例:

  • 年初至今销售额
  • 会计年初至今销售额
  • 获取年初至今的销售额
  • 月初至今销售额
  • 季初至今销售额
  • 美国和加拿大的年初至今销售额
  • 销售额与上年的变化
  • 销售额年度环比变化
  • 销售额月度环比变化
  • 销售额季度环比百分比变化
  • 去年同期销售额
  • 上月同期销售额
  • 28 天滚动平均销售额
  • 28 天滚动平均销售额

相对时间筛选值

应用相对时间筛选器,以便根据过去 N 小时/天/月/年筛选度量或聚合列。

示例:

  • 过去 4 小时的唯一用户数
  • 过去 5 天的唯一用户数
  • 过去 6 个月的总销售额
  • 过去 2 年的总销售额

最常见/最不常见的值

返回指定列中出现次数最多或最少的值。

示例:

  • 产品中最常见的值
  • 产品中哪个值最常见
  • 产品中最常见的值是什么
  • 产品中哪个值最不常见
  • 产品中最不常见的值是什么

前 N 个筛选值

计算某个度量或聚合列,并根据该度量或聚合列将计算结果筛选为前 N 个分类值。

示例:

  • 前 3 个产品的总销售额
  • 筛选为前 3 个产品的总销售额
  • 前 5 名学生的平均分数
  • 筛选为前 5 名学生的平均分数

某个类别的前 N 个值

根据度量或聚合列获取列中前 N 个值的连接列表。

示例:

  • 总销售额最高的 3 个产品
  • 销售额最高的 3 个产品
  • 销售额最高的 3 个产品是什么

信息函数

返回系统或用户信息,例如当前日期/时间,或当前用户的电子邮件、域或用户名。

示例:

  • 今天的日期
  • Now
  • 返回当前用户电子邮件
  • 返回当前域名和用户名
  • 返回当前用户的域登录名

限制和注意事项

  • 快速度量建议不能取代学习 DAX。 该功能提供的建议旨在帮助快速创建跟踪度量;但是,你仍然需要验证 DAX 建议,因为它们可能是错误的或者与意图不符。
  • LiveConnect 数据模型不支持该功能。
  • 该功能由目前仅部署到美国数据中心(美国东部和美国西部)的机器学习模型提供支持。 如果你的数据位于美国境外,则默认会禁用该功能,除非租户管理员启用了“允许用户数据离开其地理位置”租户设置:

Screenshot of the admin setting for measure suggestions.