Power Query中批量替换关键词

例:我们有一个数据表格,里面有一列我们需要根据指定数据进行批量转换。

数据表

原表
原表

替换表

替换表
替换表

最终的效果

最终效果
最终效果

(一) 分析可能需要使用的函数

先把涉及到替换的函数列一下

Table.ReplaceValue,
Table.ReplaceRows,
List.ReplaceValue,
List.ReplaceRange,
List.ReplaceMatchingItems,
Replacer.ReplaceValue,
Replacer.ReplaceText

(二) 根据替换方式挑选函数

  • 首先确定是文本替换,所以需要使用的就是Replacer.ReplaceText
  • 其次因为是对表进行替换,所以会用到Table.ReplaceValue
  • 最后涉及到批量,需要使用循环语句,我们这里使用的是List.Accumulate

(三) 代码书写

List.Accumulate(List.Zip({origian_list,replace_list}),  
                    table,     //操作的表
                    (x,y)=>Table.ReplaceValue(x,
                                             y{0},   //原值
                                             y{1},   //替换值
                                             Replacer.ReplaceText,  //文本替换函数
                                             {column_name} //需要替换的列名
                                             )
                    )

解释:

  • 通过List.Zip构建一个新旧值交叉组合成的列表;
  • x代表的是table(需要操作的表);
  • y代表的是交叉组合成的列表,其中y{0}代表的是组合交叉列表中的第一个值,也就是原值,y{1}代表的是组合交叉列表中的第二个值,也就是替换值;
  • 因为涉及到文本替换,所以使用的是Replacer.ReplaceText;
  • 最后是需要替换的列名,需要文本格式。

喜欢的话点个赞,分享下让更多人来了解。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容