Power BI Desktop 中的“从示例中添加列”

适用范围:Power BI Desktop Power BI 服务

借助 Power Query 编辑器中的“从示例中添加列”,通过为新列提供一个或多个示例值,可以将新列添加到数据模型。 可以通过所选内容创建新列示例,或基于表中的所有现有列提供输入。

Power Query 编辑器的屏幕截图,其中显示了如何从 Power BI Desktop 中的示例添加列。

在以下情况下,使用“从示例中添加列”快速轻松地创建新列:

  • 你知道自己想要在新列中获得的数据,但不确定需要哪种转换或一系列转换。
  • 你已知道自己需要执行的转换,但不确定在 UI 中选择什么内容来执行这些转换。
  • 你知道在“M”语言中使用“自定义列”表达式所需的转换,但其中一个或多个表达式在 UI 中不可用。

从示例中添加列十分简单。 接下来的部分演示这是多么简单。

从示例中添加新列

若要从维基百科获取示例数据,请从 Power BI Desktop 功能区的“主页”选项卡中选择“获取数据”>“Web”。

Power BI Desktop 的屏幕截图,其中突出显示了“获取数据”下拉菜单下的“Web”选项。

  1. 将以下 URL 粘贴到显示的对话框中,然后选择“确定”:

https://wikipedia.org/wiki/List_of_states_and_territories_of_the_United_States

  1. 在“导航器”对话框中,选择“美国的州”表,然后选择“转换数据”。 该表将在 Power Query 编辑器中打开。

  2. 从功能区的“开始”选项卡中选择“转换数据”。 数据会在 Power Query 编辑器中打开。

Power BI Desktop 的屏幕截图,其中突出显示了“转换数据”选项。

  1. 示例数据在 Power Query 编辑器中打开后,在功能区上选择“添加列”选项卡,然后选择“示例中的列”。 选择“示例中的列”图标以从所有现有列创建列,或选择下拉箭头以选择“从所有列”或“从所选内容”。 对于本演练,请使用“从所有列”。

Power Query 编辑器的屏幕截图,其中突出显示了“添加列”、“从示例中添加列”和“从所有列中添加列”。

“从示例中添加列”窗格

如果选择“添加列”>“从示例”,则“从示例中添加列”窗格会在表的顶部打开。 新的“列 1”会出现在现有列右侧。 可能需要滚动才能查看所有这些列。 在“列 1”的空白单元格中输入示例值时,Power BI 会创建规则和转换以匹配示例,并使用它们填充列的其余部分。

请注意,“示例中的列”列还会在“查询设置”窗格中显示为“应用的步骤”。 和以往一样,Power Query 编辑器会记录转换步骤,并依序向查询应用这些步骤。

“从示例中添加列”窗口的屏幕截图,其中突出显示了新的空列。

在新列中键入示例时,Power BI 会根据创建的转换显示列的其余部分的预览。 例如,如果在第一行中键入“Alabama”,则它对应于表中第一列的“Alabama”值。 按 Enter 后,Power BI 会基于第一列的值填充新列的其余部分,并将该列命名为“Name & postal abbreviation[12] - Copy”

现在,请跳到新列的“Massachusetts[E]”行,然后删除字符串的“[E]”部分。 Power BI 可检测更改,并使用该示例创建转换。 Power BI 在“从示例中添加列”窗格中描述转换,并将列重命名为“分隔符之前的文本”。

“从示例中添加列”窗口的屏幕截图,其中突出显示了“分隔符前的文本”列中的“马萨诸塞州”。

如果继续提供示例,Power Query 编辑器会将其添加到转换中。 如果感到满意,请选择“确定”提交更改。

可以通过双击列标题或右键单击列标题并选择“重命名”来重命名新列。

观看此视频以了解实际操作的“从示例中添加列”(使用示例数据源):

Power BI Desktop:从示例中添加列

支持的转换的列表

使用“从示例中添加列”时,有很多转换可用。 下面的列表显示受支持的转换:

常规

  • 条件列

引用

  • 引用特定列,包括修整、清理和大小写转换

文本转换

  • 合并(支持合并文本字符串和整个列值)
  • 替换
  • Length
  • 提取
    • 第一个字符
    • 最后一个字符
    • 范围
    • 分隔符前的文本
    • 分隔符后的文本
    • 分隔符之间的文本
    • 长度
    • 删除字符
    • 保留字符

注意

对于所有文本转换,都要考虑是否需要进行修整、清理或对列值应用大小写转换。

日期转换

  • 每周的某一日
  • 周几名称
  • 每年的某一日
  • 月份名称
  • 每年的某一季度
  • 每月的某一周
  • 每年的某一周
  • 年份
  • 年限
  • 年份开始值
  • 年份结束值
  • 月份开始值
  • 月份结束值
  • 季度开始值
  • 一个月的某些日
  • 季度结束值
  • 星期开始值
  • 星期结束值
  • 每月的某一日
  • 一天开始值
  • 一天结束值

时间转换

  • Hour
  • Minute
  • Second
  • 本地时间

注意

对于所有“日期”和“时间”转换,都要考虑是否可能需要将列值转换成“日期”或“时间”或“日期和时间” 。

数字转换

  • 绝对值
  • 反余弦
  • 反正弦
  • 反正切
  • 转换为数字
  • 余弦
  • 多维数据集
  • 求幂
  • 阶乘
  • 整除
  • 为偶数
  • 为奇数
  • 自然对数
  • 以 10 为底数的对数
  • 取模
  • 向下舍入
  • 向上舍入
  • 符号
  • 正弦
  • 平方根
  • 平方
  • 求和
  • 正切
  • Bucket/范围