网站首页 > 资源文章 正文
将一组数据删除空值后重新排列:
在Excel中有F5定位空值,然后删除空值,单元格内容上移这样的操做,如果这个工作放到Power Query中应该如何来操作呢?
我们知道有List.RemoveNulls的函数,以及List.RemoveMatchingItems函数,我们就用这两个函数分别做空值删除的操作:
List.RemoveNulls
使用List.RemoveNulls函数的前提是要有null才能被清除,那么就要有一个替换过程,因为从Excel复制过来的数据中没有null只有空白:
第一步:需要一个函数用来做空值替换null的操作:
Table.ToColumns(Table.ReplaceValue(T,"",null,Replacer.ReplaceValue,Table.ColumnNames(T)))
Table.ReplaceValue函数就是这个功能,这个函数需要五个参数:
- T:源表
- “”:表示源表中的空白
- null:是我们要替换后的内容
- Replacer.ReplaceValue:替换函数,null要用Value
- Table.ColumnNames(T):是列名称的列表,这里我们要全部替换,所以就直接取全部的列名称列表。
第二步:删除null
= List.Transform(TC,(X)=>List.RemoveNulls(X))
在TC替换的基础上,用循环删除null
第三步:还原表格结构
我们在第一步时用的Table.ToColumns函数把表转换成列的列表,这时候再转换回来
= Table.FromColumns(RNULL)
使用Table.FromColumns函数从列的列表转换成表格。
最后合成一个大公式:
= Table.FromColumns(
List.Transform(Table.ToColumns(Table.ReplaceValue(T,"",null,Replacer.ReplaceValue,Table.ColumnNames(T))),(X)=>List.RemoveNulls(X)))
这是使用List.RemoveNulls函数来做的一个公式
List.RemoveMatchingItems
List.RemoveMatchingItems函数就要简单很多了,直接做空值删除,少了一个替换过程
第一步:按列提取列表
= Table.ToColumns(T)
很简单使用Table.ToColumns函数直接提取列表
第二步:删除空值
= List.Transform(TC1,(X)=>List.RemoveMatchingItems(X,{""}))
List.RemoveMatchingItems函数有三个参数,我们这里就用前两个参数就可以了:
- 第一个参数:源列表
- 第二个参数:要替换的值的列表
第三步:合成表格
= Table.FromColumns(RBLANK)
最后组合公式:
= Table.FromColumns(
List.Transform(Table.ToColumns(T),(X)=>List.RemoveMatchingItems(X,{""})))
就像在Excel中一样,我们选用不同的函数,同样能够解决同一个问题,主要看我们对问题的理解程度,以及对函数的熟悉程度,但是无论公式长短,最终能够解决问题才是关键,了解更多的函数,解题时的思路也就更开阔一些,更能找到简便的方法。
猜你喜欢
- 2025-05-02 Windows11 a problem has been detected and windows怎么解决?
- 2025-05-02 模拟飞行 DCS F-14B Tomcat雄猫战斗机 中文指南 3.4警告指示灯
- 2025-05-02 不会用list的程序员不是好程序员,C++标准容器list类实例详解
- 2025-05-02 FTP删除文件夹时提示550 Remove directory operation failed
- 2025-05-02 随便说说removeFromSuperview方法
- 2025-05-02 Changzheng Hospital urges Novartis China to remove medical representatives amidst nationwide anti-corruption drive
- 2025-05-02 Ubuntu 系统安装NVIDIA 驱动(ubuntu 20.04安装nvidia驱动)
- 2025-05-02 自拍恶搞短片《How to Remove Your Mustache》
- 2025-05-02 usb safely remove v6.2.1.1284 使用7年还是那么好用分享给大家
- 2025-05-02 Futu and Tiger to remove apps from Chinese app stores
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 电脑显示器花屏 (79)
- 403 forbidden (65)
- linux怎么查看系统版本 (54)
- 补码运算 (63)
- 缓存服务器 (61)
- 定时重启 (59)
- plsql developer (73)
- 对话框打开时命令无法执行 (61)
- excel数据透视表 (72)
- oracle认证 (56)
- 网页不能复制 (84)
- photoshop外挂滤镜 (58)
- 网页无法复制粘贴 (55)
- vmware workstation 7 1 3 (78)
- jdk 64位下载 (65)
- phpstudy 2013 (66)
- 卡通形象生成 (55)
- psd模板免费下载 (67)
- shift (58)
- localhost打不开 (58)
- 检测代理服务器设置 (55)
- frequency (66)
- indesign教程 (55)
- 运行命令大全 (61)
- ping exe (64)
本文暂时没有评论,来添加一个吧(●'◡'●)