分组取数时会出错?这种常见的操作我一般不推荐!
最近,一位朋友在使用Power Query分组对不同地区的数据进行操作(如提取其中货主地区为华中的相关数据),一直运行得好好的,现在却突然出现了错误:
经过检查发现,分组的步骤并没有出错:
那问题出在哪里呢?
细心的朋友可能会发现,数据经过分组后,并没有“华中”这个地区的数据啊!
数据下载链接:https://t.zsxq.com/05UrZzjm2
学习没有用,除非你真的去用!
欢迎加入知识星球【Excel到PowerBI】
看实战视频、做实用练习、提实际问题,用起来!
对的,的确就是因为没有华中地区的数据,所以,后面的取数就错了。
但是,实际工作中,有时某些地区就是不存在数据的哦,比如,某天的销售,某个地区就是没有发生,但不能因为某天没有数据,就产生错误而无法进一步操作(或影响其他内容的正常运行)。
那怎么办呢?
实际上,这个问题并不在于分组,而是这种叫做“深化”的取数方式:
不了解的朋友可以参考我关于Power Query的数据结构的讲解《重要!很重要!非常重要!理解PQ里的数据结构(四、根据内容定位及筛选行)》。
我其实一般都不推荐这种读取数据的方式的,因为,一旦对应的数据不存在,它就会报错!而我们往往想要的是一个“空的结果”,而不是错误!
那么,这种情况下,该怎么处理呢?
其实也很简单,不要通过直接点击“深化“的方式取值,而是通过筛选的方式筛选出需要的数据再进行处理:
比如筛选后再展开:
此时,当我们更新的数据里没有该地区数据时,我们得到的结果将是空,而不是出错:
在Power Query里面,功能类似的操作通常有多种,但是,不同的操作,可能得到的结果存在一些细微的差异——这种差异在数据完整的情况下可能没有体现出来,但是,一旦数据缺失或存在其他问题时,可能就会体现出来,这时,一定要针对具体出错的步骤进行详细分析,找到原因,然后再尝试用其他的方法来解决。
学习Power系列知识时,
人人都会遇到很多问题,
知识星球提问,
回答可跟踪可复习,
少走弯路,学习效率更高。
相关文章
- lambda表达式中局部变量操作
- 【C 语言】字符串拷贝 ( 函数形参使用推荐方法 | 凡是涉及 修改指针指向 的操作一律创建新的 指针变量 执行 | 引入 辅助 局部 指针变量 )
- MySQL入门实例操作教材(mysql教材推荐)
- 操作Linux操作,最重要的是方德(方德linux)
- 学习 Linux:终端操作的趣味(linux终端推荐)
- 删除MSSQL中的触发器:安全运行中的关键操作(删除触发器mssql)
- 推荐Linux视频教程,轻松掌握命令行操作!(linux视频教程推荐)
- Oracle Q操作实战:快速上手(oracle q 操作)
- MySQL一句语句,操作数据库轻松不烦(mysql 一条语句)
- Oracle中小心使用不等于操作(oracle中不等于推荐)
- JavaScript使用setInterval()函数实现简单轮询操作的方法