Table.Distinct取唯/众数….Distinct/Mode/判断…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( 列表)
返回一列中的众数值:= List.Mode( 列表, 条件)
有多个众数时,各众数中最后一个
{1,1,2,2,4,3,3,4}中分别有四个众数,1、2、4、3,最后一个众数是3,List.Mode的结果就是3
返回一列中的所有众数的列表:= List.Modes( 列表, 条件)
示例1:=List.Modes({1,1,2,2,4,3,4,3})
结果:{1,2,4,3}
示例2:=List.Modes({1,1,2,2,4,3,4,3}, each _ >2)
结果:{1,4}
说明:列表中大于2的结果为{false,fasle,false,false,true,true,true,true},众数结果为{false,true},结果对应的位置就是{1,4}
Table.Distinct取唯/众数….Distinct/Mode/判断…IsDistinct(Power Query 之 M 语言)的更多相关文章
- Table.Range保留中间指定的….Range/Middle(Power Query 之 M 语言)
数据源: "姓名""基数""个人比例""个人缴纳""公司比例""公司缴纳"&qu ...
- 判断是否为空….IsEmpty(Power Query 之 M 语言)
公式: 判断表:=Table.IsEmpty( 表) 判断列表:=List.IsEmpty( 列表) 说明: 此公式的参数一般是一个由公式生成的结果 最终效果: 表/列表中全部是空的返回true 表/ ...
- 判断存在…Contains…(Power Query 之 M 语言)
表函数 判断记录在表中是否存在 = Table.Contains( 表, 记录, {"指定列1",-, "指定列n"}) = Table.ContainsAll ...
- Table.ReorderColumns移动…Reorder…(Power Query 之 M 语言)
数据源: 至少两列 目标: 列顺序重新排列 操作过程: 选取待移动的列>鼠标拖放列标题 选取待移动的列>[转换]>[移动]>选取 M公式: = Table.ReorderCo ...
- Table.FillDown填充Table.Fill…(Power Query 之 M 语言)
数据源: 任意列中包含空单元格 目标: 将空单元格填充为其上或其下单元格中的内容 操作过程: 选取指定列>[转换]>[填充]>[向下] 选取指定列>[转换]>[填充]&g ...
- Table.RowCount行列计数…Count(Power Query 之 M 语言)
数据源: 任意五行两列 目标: 计算行数(包括空行) 操作过程: [转换]>[对行进行计数] M公式: = Table.RowCount( 表 ) 扩展: 对表中列进行计数:= Table.C ...
- Table.ReverseRows反转…Reverse…(Power Query 之 M 语言)
数据源: 任意五行两列 目标: 将原排列顺序颠倒 操作过程: [转换]>[反转行] M公式: = Table.ReverseRows( 表 ) 扩展: 反转列表:= List.Reverse( ...
- 转置Table.Transpose(Power Query 之 M 语言)
数据源: 任意五行两列 目标: 转置成两行五列 操作过程: [转换]>[转置] M公式: = Table.Transpose( 表 )
- Table.CombineColumns合并…Combine…(Power Query 之 M 语言)
数据源: 任意表,表中列数超过两列 目标: 其中两列合并为一列 操作过程: 选取两列>[转换]>[合并列]>选取或输入分隔符>输入新列名>[确定] M公式: = T ...
随机推荐
- led汇编点灯
1. 汇编LED原理 为什么使用Cortex-A汇编 使用汇编初始化soc外设 使用汇编初始化DDR,I.MX不需要,因为它内部的96k ROM中存放了自己编写的启动代码,这些代码可以读取DDR配置信 ...
- 【JavaSE】集合
Java集合 2019-07-05 12:39:09 by冲冲 1. 集合的由来 通常情况下,程序直到运行时,才知道需要创建多少个对象.但在开发阶段,我们根本不知道到底需要多少个数量的对象,甚至不 ...
- Mac Maven 安装及配置
一.下载 打开 Maven 官方下载页面:https://maven.apache.org/download.cgi#,点击下载链接即可开始下载: 以 Maven 3.8.4 为例,解压后可以 ...
- HDU 7066 - NJU emulator(构造题)
题面传送门 提供一种不同于官方题解.需要的操作次数比官方题解多(官方题解大概是 \(2\times 16\),我这大概是 \(3\times 16\)),但能通过此题的做法. 首先我们考虑一个暴力,我 ...
- CSP-S2021 挂分记
赛前 数了数,这是我第五次来南航,不知道以后还有机会了(2018 NOIP, 2019CSP, 2020CSP, 2020NOIP). 上午一觉睡到 10 点,学了一下感觉很有用的 BIT 倍增,顺手 ...
- dart系列之:数学什么的就是小意思,看我dart如何玩转它
目录 简介 dart:math包的构成 math Random 总结 简介 dart也可以进行数学运算,dart为数学爱好者专门创建了一个dart:math包来处理数学方面的各种操作.dart:mat ...
- Go 命令类型和未命名类型
Go 命令类型和未命名类型 例子 package main import "fmt" // 使用type声明的是命令类型 // type new_type old_type typ ...
- python18内存管理
- pyyaml模块
pyyaml模块是一种文件数据处理格式的方法,常用与生成.解析或修改.yaml配置文件 1.常见.yaml文件格式内容如下 languages: - Ruby - Perl - Python webs ...
- 关于蓝牙Mesh您必须知道的七件事
蓝牙技术联盟于7月19日正式宣布,蓝牙(Bluetooth)技术开始全面支持Mesh网状网络.全新的Mesh功能提供设备间多对多传输,并特别提高构建大范围网络覆盖的通信能力,适用于楼宇自动化.无线传感 ...