从示例中添加列

从示例添加列时,可以快速轻松地创建满足需求的新列。 这可用于以下情况:

  • 知道新列中所需的数据,但不确定哪个转换或转换集合会到达那里。
  • 你已知道自己需要执行的转换,但不确定在 UI 中选择什么内容来执行这些转换。
  • 通过使用 M 语言中的自定义列表达式,了解所需的转换的所有信息,但其中一个或多个转换在 UI 中不可用。

来自示例的列命令位于常规组中的添加列选项卡上。

“从示例中添加列”命令。

从示例中添加新列

在此示例中,从下图所示的表开始。

包含有关特定客户的信息以及其位置和每月收入的原始表。

本示例中的目标是创建两个新列:

  • 范围:以离散增量 5,000 创建每月收入列的储料箱。
  • 全名:将姓氏名字列连接到单个列。

增加了收入范围和全名列的最终表。

来自示例的列、来自所选列

创建新列时可使用的选项之一是选择将在计算中使用的列。 对于此示例,将从每月收入列中的值创建范围列。

为此,选择每月收入列,选择来自示例的列命令,然后选择来自选择

来自所选列中的示例的列。

预览窗格将显示新的可编辑列,可在其中输入示例。 对于第一个示例,所选列中的值为 19500。 因此,在新列中,输入文本 15000 到 20000,即该值所在的储料箱。

从示例中输入新范围中的数据。

当 Power Query 找到匹配的转换时,将使用浅色文本将转换结果填充到剩余行中。 还可以查看表预览上方转换的 M 公式文本。

选择确定后,将看到新列作为查询的一部分。 还将看到添加到查询的新步骤。

添加到表中的示例中的新列。

来自示例的列、来自所有列

下一个目标是使用名字姓氏列中的值创建全名列。

为此,选择“来自示例的列”命令,然后选择“来自所有列”。

来自示例的列、来自所有列选项。

现在,将输入第一个全名示例作为 Enders, Maria

来自示例的新列的全名第一个示例。

选择确定后,将看到新列作为查询的一部分。 还将看到添加到查询的新步骤。

添加到表的新的全名列。

最后一步是删除名字姓氏每月收入列。 现在,最终表包含范围全名列,其中包含在前面的步骤中生成的所有数据。

移除了名字、姓氏和每月收入列且添加了收入范围和全名列的最终表。

提示和注意事项

提供示例时,Power Query 会提供所选列的可用字段、值和建议的转换的有用列表。 通过选择新列的任何单元格,可以查看此列表。

来自示例建议的列。

务必注意,来自示例的列体验仅适用于数据预览的前 100 行。 可以在来自示例的列步骤之前应用步骤,以创建自己的数据示例。 创建来自示例的列列后,可以删除上述步骤;新创建的列不会受到影响。

支持的转换的列表

使用来自示例的列时,可以使用许多(但不是全部)转换。 下面的列表显示受支持的转换。

常规

  • 条件列

引用

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

文本转换

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

注意

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

日期转换

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

时间转换

  • Hour
  • Minute
  • Second
  • 本地时间

注意

所有日期和时间转换都会考虑将列值转换为日期、时间或日期时间的潜在需求。

数字转换

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