M/PowerBI/PowerQuery中的[列]和Table.Column(Table,"column")有什么区别
What is the difference between [column] and Table.Column(Table, "column") in M/PowerBI/PowerQuery
再见!
我对 M/PowerBI/PowerQuery 中 [column] 和 Table.Column(Table, "column") 之间的差异有疑问。
示例Table:
'#____column
1_______a
2_______b
3_______c
期望的结果:
'#____column
1_______TEST
2_______TEST
3_______TEST
所以,我目前有以下代码:
= Table.ReplaceValue(PrevQueryTable, each Table.Column(PrevQueryTable, "column"),
"TEST",
Replacer.ReplaceValue, {"column"})
这是行不通的。结果:
'#____column
1_______a
2_______b
3_______c
然而这:
= Table.ReplaceValue(PrevQueryTable, each [column],
"TEST",
Replacer.ReplaceValue, {"column"})
有效。结果:
'#____column
1_______TEST
2_______TEST
3_______TEST
为什么?我怎样才能做某事。喜欢第一个工作吗?
(目前正在编写一个将列名用作字符串的函数。)
Table.Column
returns 一个 table 列的列表。
[column]
returns 该列中的值 当前行。
在这种情况下,我发现 Table.TransformColumns
比 Table.ReplaceValue
更灵活。
如果您使用 GUI 将多个列转换为大写,它将生成如下所示的代码:
= Table.TransformColumns(
PrevQueryTable,
{{"Col1", Text.Upper, type text},
{"Col2", Text.Upper, type text},
{"Col3", Text.Upper, type text}})
这可以作为我们要如何编写自己的转换的模板。假设我们有一个列名列表 ColumnList
(例如来自 Table.ColumnNames
)。我们可以通过向每个元素添加转换函数来转换该列表,如下所示:
= Table.TransformColumns(
PrevQueryTable,
List.Transform(
ColumnList,
each {_, each "TEST", type text}
)
)
例如"col1"
变成 {"col1", each "TEST", type text}
再见!
我对 M/PowerBI/PowerQuery 中 [column] 和 Table.Column(Table, "column") 之间的差异有疑问。
示例Table:
'#____column
1_______a
2_______b
3_______c
期望的结果:
'#____column
1_______TEST
2_______TEST
3_______TEST
所以,我目前有以下代码:
= Table.ReplaceValue(PrevQueryTable, each Table.Column(PrevQueryTable, "column"),
"TEST",
Replacer.ReplaceValue, {"column"})
这是行不通的。结果:
'#____column
1_______a
2_______b
3_______c
然而这:
= Table.ReplaceValue(PrevQueryTable, each [column],
"TEST",
Replacer.ReplaceValue, {"column"})
有效。结果:
'#____column
1_______TEST
2_______TEST
3_______TEST
为什么?我怎样才能做某事。喜欢第一个工作吗? (目前正在编写一个将列名用作字符串的函数。)
Table.Column
returns 一个 table 列的列表。
[column]
returns 该列中的值 当前行。
在这种情况下,我发现 Table.TransformColumns
比 Table.ReplaceValue
更灵活。
如果您使用 GUI 将多个列转换为大写,它将生成如下所示的代码:
= Table.TransformColumns(
PrevQueryTable,
{{"Col1", Text.Upper, type text},
{"Col2", Text.Upper, type text},
{"Col3", Text.Upper, type text}})
这可以作为我们要如何编写自己的转换的模板。假设我们有一个列名列表 ColumnList
(例如来自 Table.ColumnNames
)。我们可以通过向每个元素添加转换函数来转换该列表,如下所示:
= Table.TransformColumns(
PrevQueryTable,
List.Transform(
ColumnList,
each {_, each "TEST", type text}
)
)
例如"col1"
变成 {"col1", each "TEST", type text}