powerquery追加查询如何将导入数据表头不显示null
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了powerquery追加查询如何将导入数据表头不显示null相关的知识,希望对你有一定的参考价值。
powerquery追加查询如何将导入数据表头不显示null,方法如下:1、打开Power BI Desktop,点击“主页”-》查询组-》转换数据,就打开了Power Query编辑器。
2、在打开Power Query后进行简单的操作:
(1)加载原始数据到编辑器:主页-》新建源-》Excel-》选取Excel文件-》点击打开,然后再编辑器的“查询设置”窗格中的“应用步骤”中会记录下每一步的操作。
(2)编辑代码命令
Power Query编辑器的“添加列”选项卡-》“常规”组-》“自定义列”按钮中。 参考技术A 关于空值的运算经常被提及。平时接触到的源数据常常有空值,比如Excel数据中的空白单元格,powerquery中会显示为null,大多数时候,我们并不能简单粗暴的删除其中的空值,而是需要在PQ中对数据进一步运算整理。
如果对空值直接进行运算,得到的还是空值,这可能并不是我们期望的结果,那么本文就提供一个空值运算的思路。
假设数据如下,

首先测试一下PowerQuery中null的运算结果,比如两列相加,直接用“+”,新建列,

结果如下:

null+数字=null
null参与运算的结果也都成了null。
这是因为在PowerQuery运算中:null+数字=null
那么如何能让null+数字=数字呢,可能大家想到的一个办法是null使用0来替换,这样确实能得到正确的结果。
但是null毕竟和0是有差别的,假设都替换为0,然后又出现两列相乘的需求,是不是又悲剧了:(
下面就说一个不用替换的方法:使用List类函数。
依然以两列相加为例,相加用List.Sum函数,

结果如下,

null+数字=数字
这样的结果是不是就舒服多了!
这样就做到了:null+数字=数字,从这个运算结果来看,null在List.Sum运算中默认为0。
那如果相乘呢,可以使用List.Product函数,

null*数字=数字
在这个乘法运算中,null*数字=数字,null在其中又相当于是1啦。
我们还可以进一步测试最大值和最小值,其结果如下:
List.Max(null,数字)=数字
List.Min(null,数字)=数字
是不是感觉很奇怪?
其实无论null和数字进行何种运算,其结果都是数字,null就像压根不存在一样,不参与数字运算,把它当成真空就好。
所以在List类函数的运算中,null才是真正实现了做自己,无论与数字怎么运算,最终的结果都是数字。
总结
以加法为例(其他类型的运算与加法类似):
如果你想要的结果是null+数字=null,直接使用运算符号"+";
如果你想要的结果是null+数字=数字,使用List.Sum函数;
最后友情提醒,List运算的结果上载到数据模型后默认为文本型,所以上载前请先在PowerQuery中将其更改为数值型哦。 参考技术B 答:
1. 首先确保你在PowerQuery中导入的原始数据表头不显示null;
2. 然后,在PowerQuery编辑器中,在“变换”标签中,选择“更改类型”选项,并将null列表改为正确的列表名称;
3. 最后,在PowerQuery编辑器中,在“转换”标签中,选择“使用分组列”选项,并将null列作为“分组列”。此时,PowerQuery会将所有null列自动转换为正确的表头,右键会自动显示正确的表头。 参考技术C 在从文件夹导入数据时,如果自定义M函数是=Excel.Workbook([Content],true)会产生楼主所说的现象。这里的true是将第一行作为标题。但如果将true 删除变成=Excel.Workbook([Content]),导入数据后,再将第一行提升为标题,再将另两行标题筛选出去,就不会发生上述现象。具体原因,本人也说不清楚。
解决方法:
1. 估计你在使用从文件夹做追加查询;
2. 三个数据表的结构以及标题行都是一致的 对不对;
3. 要在示例转换文件查询上做文章 将提升的标题步骤删除 然后添加索引列 这样标题行实际就会被赋予0这个值,关闭并上载
4. 进入最后查询的设置 将最后一步删除,提升标题,筛除索引号为0的记录(其他两表的标题行),修改完毕,关闭并上载 参考技术D 对于PowerQuery追加查询,可以使用“Replace Values”转换操作移除null值,具体操作步骤如下:1、打开“转换”菜单;2、选中“替换”;3、勾选“value or column to replace”;4、在“values to replace”中选择“null”;5、然后在“replace with this value”中输入空白即可。
PowerQuery
参考技术A 查询设置位置加入新文件
查询编辑器里无法直接更改数据,需要在上面的功能区里更改数据
合并文件: 合并查询(横向合并),追加查询(纵向合并)
选择多个表格 :按shift
如果报错,第一个查数据类型是否错误
修整和清除
拆分列
合并列
替换
判断奇偶数
删除规则: 默认保留第一行
排序和删除重复项同时使用会有冲突,解决办法: 转换---检测数据类型(排序后的箭头要消失)
保留重复项同理
先改数据类型制造错误,然后直接删除错误
行列互换
二维转一维,找二维表中以行的形式出现的字段,把这些字段进行逆透视(一维表:一个指标只有一个列;二维表:同个指标很多列)
一维转二维,找一维表中以列的形式出现的字段,把这些字段进行透视
数字排序按照,1,10,11,12,~19,2,20,21......的顺序,用怕排序更改
值为文本时,选择不要聚合
基本
第一行内容是选择分组条件
新列名:新建的列命名 操作:进行各种操作 柱:进行操作的列
高级
可以添加多个选择分组的条件
所有行
展开:打开选中列的信息 聚合:对选中列进行计数和求和
条件列:创建一个按条件添加当前所选列中的值的新列
索引列:创建一个新的列,其索引从0,1,或者自定义的数开始
重复列:创建一个新的列,复制当前所选列的值
自定义列(所有公式内的标点符号的都用英文输入法)
条件列文本:公式:“文本”
数值运算:公式:插入一个可用列+,-,*,/插入一个可用列
条件列:公式:
怎么将仅创建连接的数据导入工作表:查询和链接找到查询,然后右键点击加载到
若列名顺序不同,则合并时列名自动按照当前表格的列名顺序排序
若列名不同,则合并后自动生成空格
求每个区域内产品分类的金额
求每个区域每个产品的折扣金额
左外部:A,B,C,D,E; D,E
右外部:D,E; D,E,F,G
完全外部:A,B,C,D,E; D,E,F,G
内部:D,E; D,E
左反:A,B,C;
右反: ;F,G
以上是关于powerquery追加查询如何将导入数据表头不显示null的主要内容,如果未能解决你的问题,请参考以下文章