热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PowerQuery中处理空值(null)运算的有效方法

在数据处理过程中,空值(null)的处理是一个常见的问题。本文将探讨在PowerQuery中如何有效地处理空值运算,确保数据的准确性和完整性。

在数据处理和分析中,空值(null)的处理是一个常见的挑战。特别是在PowerQuery中,源数据中经常会出现空值,例如Excel中的空白单元格。这些空值在运算时可能会导致意外的结果。本文将介绍几种有效的方法来处理空值运算,确保数据的准确性和完整性。

首先,我们来看一个简单的例子。假设有一个数据表,其中包含一些空值:

在PowerQuery中,直接对空值进行运算通常会导致结果仍然是空值。例如,两列相加时,如果其中一列为空值,结果也会是空值:

结果如下:

这是因为PowerQuery中的运算规则规定:null + 数字 = null。为了得到预期的结果,我们需要采取一些特殊的方法。

一种常见的方法是将空值替换为0。虽然这种方法在某些情况下有效,但在其他情况下可能会产生错误的结果。例如,如果需要进行乘法运算,将空值替换为0会导致结果始终为0。

因此,这里推荐使用List类函数来处理空值运算。以两列相加为例,可以使用List.Sum函数:

结果如下:

可以看到,null + 数字 = 数字。在List.Sum运算中,null默认被视为0。

同样地,对于乘法运算,可以使用List.Product函数:

结果如下:

null * 数字 = 数字。在List.Product运算中,null默认被视为1。

我们还可以测试最大值和最小值:

List.Max(null, 数字) = 数字

List.Min(null, 数字) = 数字

无论null和数字进行何种运算,其结果都是数字,null就像不存在一样,不参与数字运算。

总结:

1. 如果你希望结果是null + 数字 = null,直接使用运算符号“+”。

2. 如果你希望结果是null + 数字 = 数字,使用List.Sum函数。

最后,需要注意的是,List运算的结果在上传到数据模型后默认为文本型,因此在上传前请先在PowerQuery中将其更改为数值型。


推荐阅读
author-avatar
何俊雨_127
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有