热门标签 | 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中将其更改为数值型。


推荐阅读
  • 2018-2019学年第六周《Java数据结构与算法》学习总结
    本文总结了2018-2019学年第六周在《Java数据结构与算法》课程中的学习内容,重点介绍了非线性数据结构——树的相关知识及其应用。 ... [详细]
  • 深入解析Java枚举及其高级特性
    本文详细介绍了Java枚举的概念、语法、使用规则和应用场景,并探讨了其在实际编程中的高级应用。所有相关内容已收录于GitHub仓库[JavaLearningmanual](https://github.com/Ziphtracks/JavaLearningmanual),欢迎Star并持续关注。 ... [详细]
  • 本文探讨了如何在 F# Interactive (FSI) 中通过 AddPrinter 和 AddPrintTransformer 方法自定义类型(尤其是集合类型)的输出格式,提供了详细的指南和示例代码。 ... [详细]
  • 本文介绍了如何在 Node.js 中使用 `setDefaultEncoding` 方法为可写流设置默认编码,并提供了详细的语法说明和示例代码。 ... [详细]
  • Redux入门指南
    本文介绍Redux的基本概念和工作原理,帮助初学者理解如何使用Redux管理应用程序的状态。Redux是一个用于JavaScript应用的状态管理库,特别适用于React项目。 ... [详细]
  • LeetCode 690:计算员工的重要性评分
    在解决LeetCode第690题时,我记录了详细的解题思路和方法。该问题要求根据员工的ID计算其重要性评分,包括直接和间接下属的重要性。本文将深入探讨如何使用哈希表(Map)来高效地实现这一目标。 ... [详细]
  • HTML5 表单新增属性详解
    本文深入探讨了HTML5中表单的新增属性,帮助读者全面掌握这些新特性。内容涵盖autocomplete、autofocus、list等常用属性,并详细解释了form、novalidate、enctype和accept-charset等高级属性的功能与应用场景。 ... [详细]
  • #print(34or4 ... [详细]
  • 斯特林数与幂
    参考资料:https:www.luogu.com.cnblogchtholly-willemsolution-p5408https:blog.csdn.netguizhiyuart ... [详细]
  • 本文详细介绍了如何在Kendo UI for jQuery的数据管理组件中,将行标题字段呈现为锚点(即可点击链接),帮助开发人员更高效地实现这一功能。通过具体的代码示例和解释,即使是新手也能轻松掌握。 ... [详细]
  • 本文介绍了解决在Windows操作系统或SQL Server Management Studio (SSMS) 中遇到的“microsoft.ACE.oledb.12.0”提供程序未注册问题的方法,特别针对Access Database Engine组件的安装。 ... [详细]
  • 由二叉树到贪心算法
    二叉树很重要树是数据结构中的重中之重,尤其以各类二叉树为学习的难点。单就面试而言,在 ... [详细]
  • JavaScript中的数组是数据集合的核心结构之一,内置了多种实用的方法。掌握这些方法不仅能提高开发效率,还能显著提升代码的质量和可读性。本文将详细介绍数组的创建方式及常见操作方法。 ... [详细]
  • 本文详细介绍了如何在Excel中有效利用颜色和代码,解释了不同颜色和代码的具体含义,并提供了实用的操作技巧。通过学习这些内容,用户可以更好地管理和分析数据。 ... [详细]
  • 本文介绍了一个基于 Java SpringMVC 和 SSM 框架的综合系统,涵盖了操作日志记录、文件管理、头像编辑、权限控制、以及多种技术集成如 Shiro、Redis 等,旨在提供一个高效且功能丰富的开发平台。 ... [详细]
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社区 版权所有