powerquery - PowerQuery - 在计算中使用列的位置而不是列名
问题描述
PowerQuery 和 M-Code 的新功能。我添加了一个计算列以获得最大值。我想使用列的位置编号,而不是使用硬编码的列名。
当前代码为: = Table.AddColumn(Source, "Maximum", each List.Max({[#"1-6-2021"], [#"1-5-2021"], [#"1-4 -2021"]}),型号)
我希望它不是 [#"1-6-2021"],而是第 3 列;对于 [#"1-5-2021"] 第 4 列等。
如何用职位替换这些列名?
非常感谢您的帮助!
解决方案
您可以调整您想要的列 # 的 {x} 部分
0 是第一列,所以这是 2/3/4 列的最大值
let Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
x= Table.AddColumn(Source, "Maximum", each List.Max({
Record.Field(_,Table.ColumnNames(Source){1}),
Record.Field(_,Table.ColumnNames(Source){2}),
Record.Field(_,Table.ColumnNames(Source){3})
}), type number)
in x
如果您需要在一堆列上执行 Max,例如,下面将对除前两列之外的所有列执行此操作,前两列已被第二行删除
let Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
colToSum = List.RemoveFirstN(Table.ColumnNames(Source),2),
AddIndex = Table.AddIndexColumn(Source,"Index",0,1),
GetMax = Table.AddColumn(AddIndex, "Custom", each List.Max( Record.ToList( Table.SelectColumns(AddIndex,colToSum){[Index]}) ))
in GetMax
推荐阅读
- json - 不能使用“encoding/json”覆盖 eagle(类型接口 {})
- html - Html DIV 未水平对齐
- reactjs - Reference.set 失败:第一个参数在属性“users.undefined.email”中包含未定义
- html - CSS隐藏的元素仍然占用页面空间-如何设置显示:无条件?
- r - R中的倾向得分
- java - 使用 JNA 获取服务列表
- cookies - 将密码哈希保存在 cookie 中以进行授权是个好主意吗
- javascript - React-native 版本未匹配尝试了堆栈溢出和其他平台上可用的所有解决方案
- c# - 如何从本地 HTML 文件获取更新的内容以显示在 UWP 应用程序的 WebView 中?
- dart - CupertinoSliverNavigationBar largeTitle 多行