删除重复….Distinct/判断重复…IsDistinct(Power Query 之 M 语言)
数据源:
“姓名”“基数”“个人比例”“个人缴纳”“公司比例”“公司缴纳”“总计”,共7列7行数据,其中姓名列第1、2行与第6、7行内容重复
目标:
删除姓名列中内容重复的行
操作过程:
选取指定列》【主页】》【删除行】》【删除重复项】
M公式:
= Table.Distinct( 表, {{ "列名1", 区分大小写},...,{ "列名n", 区分大小写}})
说明:
删除重复项的规则是保留第一次出现的。
对整表所有列删除重复项:=Table.Distinct( 表)
对指定列删除重复项:=Table.Distinct( 表,{ "列名1",...,"列名n"})
对列中字母大小写进行区分:=Table.Distinct( 表,{ "列名", Comparer.OrdinalIgnoreCase})
只返回第一行数据:=Table.Distinct( 表, {})
最终效果:
姓名列中的重复项被删除,只保留1-5行
扩展:
列表删除重复项:=List.Distinct( 列表, 条件)
示例1:=List.Distinct({1,2,2,3,3,4})
结果:{1,2,3,4}
示例2:=List.Distinct({5,6,4,4,5,5}, each _ >4)
结果:{5,4}
说明:列表中大于4的结果为{true,true,false,false,true,true},去除重复项后剩下{true,false},结果对应的位置就是{5,4}
判断表或表中指定列中是否是唯一值:=Tabel.IsDistinct( 表, { "列1", "列2",…, "列n"})
结果为逻辑值,其中一列里是唯一值的结果为True,否则为False。
判断列表中是否是唯一值:=List.IsDistinct( 列表)