Forum Discussion
remove Max values in an index column
How can i remove the row with highest order count in each shipment? For below data:
for example, for shipment # 37136 it should not show the row with order count 4
- Anonymous2 years ago
Let's say your last step was PriorStep. I would group by Shipment # column, and choose the Max Aggregation for the ORDER COUNT column. Name that step "Group" or whatever you want. Then you can join that table to PriorStep using a left anti join. So after grouping,
= Table.Join(PriorStep, {"SHIPMENT #", "ORDER COUNT"}, Group, {"GROUPED SHIPMENT # COLUMN", "Max ORDER COUNT"}, JoinKind.LeftAnti)
Side note: using the "#" character in your column name is going to get you into trouble some day, because somehow it'll get parsed as an escape character and mess up your quotes.
--Nate
5 Replies
- AnonymousNot applicable
Let's say your last step was PriorStep. I would group by Shipment # column, and choose the Max Aggregation for the ORDER COUNT column. Name that step "Group" or whatever you want. Then you can join that table to PriorStep using a left anti join. So after grouping,
= Table.Join(PriorStep, {"SHIPMENT #", "ORDER COUNT"}, Group, {"GROUPED SHIPMENT # COLUMN", "Max ORDER COUNT"}, JoinKind.LeftAnti)
Side note: using the "#" character in your column name is going to get you into trouble some day, because somehow it'll get parsed as an escape character and mess up your quotes.
--Nate
- smpa01Community Champion
Table.SelectRows(prevStep, (x)=>x[orderCount]<>List.Max(Table.SelectRows(prevStep, (y)=> x[shipment]=y[shipment])[orderCount]))- kaymHelper I
This didn't work : (
- smpa01Community Champion
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMlTSAeJYHQjLCM4yBrOMgCxLOMvQQCk2FgA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [shipment = _t, orderCount = _t]), #"Changed Type" = Table.TransformColumnTypes(Source,{{"shipment", Int64.Type}, {"orderCount", Int64.Type}}), #"Filtered Rows" = Table.SelectRows(#"Changed Type", (x)=>x[orderCount]<>List.Max(Table.SelectRows(#"Changed Type", (y)=> x[shipment]=y[shipment])[orderCount])) in #"Filtered Rows"kaym try the above
- mussaendaCommunity Champion
What if the Shipment # has no duplicate?