在包含表格的列内提升 headers
Promote headers inside column containing tables
假设我们有包含 table 的列 Content
。我想以这样的方式转换该列的每个 table,使得所有 table 从第一行得到 headers。
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WKsovVzBU0lFyVIrVgfCMUHjGKDwTFJ4pCs8MwosFAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t]),
#"Grouped Rows" = Table.Group(Source, {"Column2"}, {{"Content", each _, type table}}),
#"Previous Step" = Table.SelectColumns(#"Grouped Rows",{"Content"}),
#"Added Custom" = Table.AddColumn(#"Previous Step", "New Content", each Table.PromoteHeaders([Content], [PromoteAllScalars=true]))
in
#"Added Custom"
如果您从这段代码 select Previous Step
中单击红色箭头显示的位置(Table
文字的右侧,而不是上面),您可能会在里面看到:
现在我可以在最后一步添加的自定义列中获得我想要的结果:
但我想不添加新列而是在最后一步通过转换 Content
列来得到我想要的。这可能吗?
请注意,我不想扩展 tables。
只需使用 Table.TransformColumns 而不是 Table.AddColumn
Table.TransformColumns(
#"Previous Step",
{{"Content", each Table.PromoteHeaders(_, [PromoteAllScalars = true])}}
)
创建转换列步骤的一种简单方法是执行一些操作,例如从“转换”选项卡对列添加文本操作,这将创建一个 TransformColumns 步骤,您可以编辑它来执行任何您想要的操作。
假设我们有包含 table 的列 Content
。我想以这样的方式转换该列的每个 table,使得所有 table 从第一行得到 headers。
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WKsovVzBU0lFyVIrVgfCMUHjGKDwTFJ4pCs8MwosFAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t]),
#"Grouped Rows" = Table.Group(Source, {"Column2"}, {{"Content", each _, type table}}),
#"Previous Step" = Table.SelectColumns(#"Grouped Rows",{"Content"}),
#"Added Custom" = Table.AddColumn(#"Previous Step", "New Content", each Table.PromoteHeaders([Content], [PromoteAllScalars=true]))
in
#"Added Custom"
如果您从这段代码 select Previous Step
中单击红色箭头显示的位置(Table
文字的右侧,而不是上面),您可能会在里面看到:
现在我可以在最后一步添加的自定义列中获得我想要的结果:
但我想不添加新列而是在最后一步通过转换 Content
列来得到我想要的。这可能吗?
请注意,我不想扩展 tables。
只需使用 Table.TransformColumns 而不是 Table.AddColumn
Table.TransformColumns(
#"Previous Step",
{{"Content", each Table.PromoteHeaders(_, [PromoteAllScalars = true])}}
)
创建转换列步骤的一种简单方法是执行一些操作,例如从“转换”选项卡对列添加文本操作,这将创建一个 TransformColumns 步骤,您可以编辑它来执行任何您想要的操作。