创建 Power BI Desktop 中的计算列

凭借计算列,你可以将新数据添加到模型中已存在的表。 但请勿从数据源查询值并将值加载到新列中,而是创建用于定义列值的数据分析表达式 (DAX) 公式。 在 Power BI Desktop 中,使用“报表”视图、“数据”视图或“模型”视图中的“新建列”功能创建计算列。

与使用 Power Query 编辑器中的“添加自定义列”创建查询中包含的自定义列不同,在“报表”视图、“数据”视图或“模型”视图中创建的计算列以你已加载到模型中的数据为基础。 例如,可以选择连接两个不同但相关的表中的值、执行添加或提取子字符串。

像任何其他字段一样,你创建的计算列将显示在“字段”列表中,但它们将带有特殊图标,显示其值为公式的结果。 你可以随意对列进行命名,并将其像其他字段一样添加到报表可视化效果。

Screenshot of Power BI Desktop showing calculated columns in the Fields view.

计算列使用 DAX 计算结果,该表达式是一个旨在处理关系数据(如 Power BI Desktop 中的)的公式语言。 DAX 包括一个超过 200 个函数、运算符和构造的库。 它为创建公式提供了巨大的灵活性,几乎可以计算任何数据分析所需的结果。 若要了解有关 DAX 的详细信息,请参阅了解 Power BI Desktop 中的 DAX 基本概念

DAX 公式类似于 Excel 公式。 事实上,DAX 有着许多与 Excel 相同的功能。 但是,DAX 函数旨在处理以交互方式切片或筛选的报表中的数据,例如 Power BI Desktop 中的数据。 在 Excel 中,可以为表中的每行使用不同的公式。 在 Power BI 中,为新列创建 DAX 公式时,它会为表中的每行计算结果。 将在必要时(例如刷新基础数据或更改值时)重新计算列值。

我们来看一个示例

Jeff 是 Contoso 的货运经理,他想创建一个报表,显示去往不同城市的货运数量。 他有包含城市和州分隔字段的“地理”表。 但是,Jeff 希望他的报表能够将城市和州值作为单个值显示在同一行。 现在,Jeff 的“Geography”表中没有所需字段。

Screenshot of Power BI Desktop showing the Geography filter in the Fields view.

但凭借计算列,Jeff 可以将来自“城市”列的城市与来自“州”列的州组合起来。

Jeff 右键单击“地理”表,然后选择“新建列”。 然后,Jeff 在公式栏中输入以下 DAX 公式:

CityState = [City] & "," & [State]

此公式创建名为 CityState 的新列。 对于“地理”表中的每行,取“城市”列的值,添加逗号和空格,然后连接“州”列的值。

现在,Jeff 具有所需的字段。

Screenshot of Power BI Desktop showing CityState checked in the Geography filter in the Fields view.

现在 Jeff 可以将它与货运数量一起添加到报表画布中。 仅需一点努力,Jeff 现在有了“CityState”字段,可以将其添加到几乎任何类型的可视化效果中。 在 Jeff 创建新地图时,Power BI Desktop 已经知道如何读取新建列中的城市和州值。

Screenshot of Power BI Desktop showing data represented in a Map visual.

本文在此处提供计算列的简单介绍。 有关详细信息,请参阅以下资源: