Forum Discussion
CPrince
6 years agoFrequent Visitor
Merge duplicate rows while pivoting/retaining unique data from another column?
Hi, So I have a data set with a varying number of duplicates in the same column. Column 1 | Column 2 N1 | 123 N1 | 124 N2 | 125 N2 | 126 N2 | 127 N3 | 128 N3 | 129 N4 | 130 N4 | 131 ...
- 6 years ago
Hi CPrince ,
We can do the following steps in Power Query Editor to meet your first requirement:
1. Group by the Column1
2. add the custom column
Table.Skip( Table.Transpose([OtherColumns]), 1 )3. Expand the new column
If you want to merge them into one column, we can add a custom culumn like following:
Text.Combine( Table.ToList( Table.TransformColumnTypes( Table.SelectColumns([OtherColumns],{"Column2"}), {{"Column2", type text}} ) ), ", " )All the Queries:
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45W8jNU0lEyNDJWitWBc0wgHCMwxxSZY4bMMYdwjMEcC2SOJYRjAuIYGyBzDJE5RkqxsQA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t]), #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}, {"Column2", Int64.Type}}), #"Grouped Rows" = Table.Group(#"Changed Type", {"Column1"}, {{"OtherColumns", each _, type table [Column1=text, Column2=number]}}), Test = Table.AddColumn(#"Grouped Rows", "MergeTable", each Table.Skip( Table.Transpose([OtherColumns]), 1 )), #"Expanded MergeTable" = Table.ExpandTableColumn(Test, "MergeTable", {"Column1", "Column2", "Column3"}, {"MergeTable.Column1", "MergeTable.Column2", "MergeTable.Column3"}) in #"Expanded MergeTable"let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45W8jNU0lEyNDJWitWBc0wgHCMwxxSZY4bMMYdwjMEcC2SOJYRjAuIYGyBzDJE5RkqxsQA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t]), #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}, {"Column2", Int64.Type}}), #"Grouped Rows" = Table.Group(#"Changed Type", {"Column1"}, {{"OtherColumns", each _, type table [Column1=text, Column2=number]}}), #"Added Custom" = Table.AddColumn(#"Grouped Rows", "Custom", each Text.Combine( Table.ToList( Table.TransformColumnTypes( Table.SelectColumns([OtherColumns],{"Column2"}), {{"Column2", type text}} ) ), ", " )) in #"Added Custom"
Best regards,
CPrince
6 years agoFrequent Visitor
Sorry posted this in the wrong place. Thanks for the reply though!
v-lid-msft
6 years agoCommunity Support
Hi CPrince ,
How about the result after you follow the suggestions mentioned in my original post?Could you please provide more details about it If it doesn't meet your requirement?
Best regards,