如何替换一列中的多个值
How to replace more values in one column
我正在尝试替换一列中的 3 个值,但我想一步完成而不是三步完成。我不想替换值 1、替换值 2 和替换值 3。
假设您在 Cars 列中只有这些值:Volkswagen、Renault 和 Dacia。你想像这样替换它们:
Volkswagen --> VW
Renault --> RN
Dacia --> DC
是否可以一步完成而不是三步完成?我正在尝试使用语句 Table.ReplaceValue
非常感谢
其中一种方法是像这样创建 RenameCars table:
将此 table 添加到 PQ 后,您可以使用以下公式:
= Table.TransformColumns(YourTable, {"Cars", each
try RenameCars{[Name = _]}[Name_mod] otherwise _})
另一种方法(如果您的替换列表很短)是使用 Record.FieldOrDefault 函数。在这种情况下,不需要支持 table。
= Table.TransformColumns(YourTable, {"Cars", each
Record.FieldOrDefault([Volkswagen = "VW", Renault = "RN", Dacia = "DC"],_,_)})
与@Aleksei 的回答类似,如果您愿意,可以改用 Table.ReplaceValue
函数:
= Table.ReplaceValue(YourTable, each [Car], each RenameCars{[Name = [Car]]}[Name_mod], Replacer.ReplaceText, {"Car"})
这假设您也有 RenameCars
table。
我正在尝试替换一列中的 3 个值,但我想一步完成而不是三步完成。我不想替换值 1、替换值 2 和替换值 3。
假设您在 Cars 列中只有这些值:Volkswagen、Renault 和 Dacia。你想像这样替换它们:
Volkswagen --> VW
Renault --> RN
Dacia --> DC
是否可以一步完成而不是三步完成?我正在尝试使用语句 Table.ReplaceValue
非常感谢
其中一种方法是像这样创建 RenameCars table:
将此 table 添加到 PQ 后,您可以使用以下公式:
= Table.TransformColumns(YourTable, {"Cars", each
try RenameCars{[Name = _]}[Name_mod] otherwise _})
另一种方法(如果您的替换列表很短)是使用 Record.FieldOrDefault 函数。在这种情况下,不需要支持 table。
= Table.TransformColumns(YourTable, {"Cars", each
Record.FieldOrDefault([Volkswagen = "VW", Renault = "RN", Dacia = "DC"],_,_)})
与@Aleksei 的回答类似,如果您愿意,可以改用 Table.ReplaceValue
函数:
= Table.ReplaceValue(YourTable, each [Car], each RenameCars{[Name = [Car]]}[Name_mod], Replacer.ReplaceText, {"Car"})
这假设您也有 RenameCars
table。