多列排名(Power Query)

数据源:

//多列美式排名
let
    源 = Excel.CurrentWorkbook(){[Name="表1"]}[Content],
    拆分列 = Table.ToColumns(源),
    列分组 = List.Split(拆分列, 3),
    列合并 = List.Transform(列分组, each Table.FromColumns(_)),
    合并表 = Table.Combine(列合并),
    改标题 = Table.RenameColumns(合并表,{{"Column1", "班级"}, {"Column2", "姓名"}, {"Column3", "成绩"}}),
    成绩排名 = Table.AddRankColumn(改标题, "排名", {"成绩", 1})
in
    成绩排名
//多列中式排名
let
    源 = Excel.CurrentWorkbook(){[Name="表1"]}[Content],
    拆分列 = Table.ToColumns(源),
    列分组 = List.Split(拆分列, 3),
    列合并 = List.Transform(列分组, each Table.FromColumns(_)),
    合并表 = Table.Combine(列合并),
    改标题 = Table.RenameColumns(合并表,{{"Column1", "班级"}, {"Column2", "姓名"}, {"Column3", "成绩"}}),
    分组 = Table.Group(改标题, "成绩", {"内容", each _}),
    排名 = Table.AddIndexColumn(Table.Sort(分组,{"成绩", 1}), "排名", 1),
    展开 = Table.ExpandTableColumn(排名, "内容", {"班级", "姓名"}),
    整理 = Table.ReorderColumns(展开,{"班级", "姓名", "成绩", "排名"})
in
    整理

 

posted @ 2023-02-04 19:16  熬肥妖  阅读(128)  评论(0编辑  收藏  举报