You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Power Query中获取与Expected列最匹配的列值

Power Query 实现匹配最接近Expected值的方法

直接按下面步骤操作,完全对应你之前用的Excel INDEX/MATCH逻辑:

  1. 打开Power Query编辑器,选中目标数据表格,点击添加列 > 自定义列
  2. 在弹出的公式框中粘贴这段M语言代码:
List.Min(
    List.Transform(
        {[Week 1], [Week 2], [Week 3]},
        each [Value = _, Diff = Number.Abs(_ - [Expected])]
    ),
    (x) => x[Diff]
)[Value]
  1. 点击确定,新列就会自动算出Week 1/2/3中与Expected最接近的数值

代码逻辑拆解

  • {[Week 1], [Week 2], [Week 3]}:把当前行的三列目标数值打包成一个列表
  • List.Transform(..., each [Value = _, Diff = Number.Abs(_ - [Expected])]):遍历列表里的每个值,生成包含原始值和对应差值绝对值的记录列表
  • List.Min(..., (x) => x[Diff]):以差值(Diff)为判断依据,找出记录列表中差值最小的那条记录
  • [Value]:提取该记录里的原始数值,就是最终要的结果

如果遇到多个值与Expected的差值完全相同(比如Week1和Week2的差值一致),这段代码会返回列表中第一个出现的数值,和Excel里MATCH匹配首个结果的逻辑完全一致。

内容的提问来源于stack exchange,提问作者Brian Schmitz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 16:24:54