在谷歌表格中取消数据透视

问题描述 投票:0回答:1

我有一个例子,我在Excel中有以下数据

我想要做的是将上面的数据逆透视为以下结果

是否有任何公式可以让我在 Excel 或 Google Sheet 上执行此操作?

非常感谢

excel google-sheets excel-formula normalization unpivot
1个回答
0
投票

在 Excel 中,将数据带入 powerquery,其中数据...来自表/范围...[x] 标题

进入家庭高级编辑器并使用

let Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content], //replace this row with the autogenerated row excel provides
base_columns=1, groupsof=3, 
Combo = List.Transform(List.Split(List.Skip(Table.ColumnNames(Source),base_columns),groupsof), each List.FirstN(Table.ColumnNames(Source),base_columns) & _),
#"Added Custom" =List.Accumulate(Combo, #table({"Column1"}, {}),(state,current)=> state & Table.Skip(Table.DemoteHeaders(Table.SelectColumns(Source, current)),1))
in #"Added Custom"

文件..关闭并加载...作为表格或返回Excel

保留行排序的替代方法

let Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content], //replace this row with the autogenerated row excel provides
#"Changed Type" =  Table.TransformColumnTypes(Source,List.Transform(Table.ColumnNames(Source), each {_, type text})),
leading=1, groupsof=3,
#"Added Custom" = Table.AddColumn(#"Changed Type", "Custom", each List.Split( List.RemoveFirstN(Record.ToList( _),leading), groupsof) ),
#"Added Custom0" = Table.AddColumn(#"Added Custom", "Custom0", each Text.Combine(List.FirstN(Record.ToList(_),leading),"|")),
#"Removed Other Columns" = Table.SelectColumns(#"Added Custom0",{"Custom0", "Custom"}),
#"Expanded Custom" = Table.ExpandListColumn( #"Removed Other Columns", "Custom"),
#"Extracted Values" = Table.TransformColumns(#"Expanded Custom", {"Custom", each Text.Combine(List.Transform(_, Text.From), "|"), type text}),
#"Merged Columns" = if leading=0 then Table.RemoveColumns(#"Extracted Values",{"Custom0"}) else Table.CombineColumns(#"Extracted Values",{"Custom0", "Custom"},Combiner.CombineTextByDelimiter("|", QuoteStyle.None),"Custom"),
#"Split Column by Delimiter" = Table.SplitColumn(#"Merged Columns", "Custom", Splitter.SplitTextByDelimiter("|", QuoteStyle.Csv), List.FirstN(Table.ColumnNames(#"Changed Type"),leading+groupsof))
in #"Split Column by Delimiter"
© www.soinside.com 2019 - 2024. All rights reserved.