我正在处理从pdf文件导入的数据。在Power Query导入(data . column7)中有一个额外的列,其中包含属于两侧相邻列(data . column7)的数据。Column6和Data.Column8)。列6和8中数据被推入列7的单元格中有空值。我想用第7列的正确数据替换第6列和第8列中的空值,使第6列和第8列的所有其他值保持原样。
看了这篇文章之后:Power Query/Power BI—用其他列的值替换空值
和观看这个视频:https://www.youtube.com/watch?v=ikzeQgdKA0Q
我试了下面的公式:
= Table.ReplaceValue(#"Expanded Data",null, each _[Data.Column7] ,Replacer.ReplaceText,{"Data.Column6","Data.Column8"})
(注:"扩展数据";是替换值步骤前的最后一步)
我没有得到任何类型的语法错误,但替换值步骤没有做任何事情。我在第6列和第8列中的空值没有被第7列的正确数据所替换。
任何关于如何实现替换的见解将不胜感激。谢谢你。
(我应该提到,我是一个新的Power Query用户,所以请详细说明并假设我什么都不知道!)
我相信一定有一些方法可以用ReplaceValue函数做到这一点,但我认为这样做可能更容易:
1:创建一个定义NewData6= if[Data]的新列。Column6]=null then [Data.]Column7] else[数据。Column6]2:对8做同样的事情:NewData8= if[Data]。Column8]=null then[数据。]Column7] else[数据。Column8]3:删除数据。Column6/7/84:如果需要,重新命名新创建的列。
您可以在高级编辑器中执行这些步骤,也可以使用添加列选项卡中的创建自定义列按钮。
我正在寻找一个解决方案,我能够做到如下(基于提供的示例):
= Table.ReplaceValue(#"Expanded Data",null, each _[Data.Column7] ,Replacer.ReplaceValue,{"Data.Column6","Data.Column8"})
不同之处在于使用了Replacer。ReplaceValue而不是Replacer。ReplaceText.
我注意到each后面的_不是必需的。
如果列是文本数据类型,那么它可能是空字符串而不是实际的null。
试着用""
代替你的公式中的null
。