我一直在想这应该是容易的,但答案是在回避我。在Excel Power Query中,我想根据另一列的值来转换列的每一行中的值。例如,假设我有表1如下:电源变换查询基于列的另一列
Column A | Column B
-------------------
X | 1
Y | 2
我想变换基于在列B的值列A中的值,而不必添加新的列,并替换原始列A.我已尝试使用TransformColumns,但输入只能是目标列的值 - 我无法从TransformColumns函数内访问行/记录中的其他字段值。我会像向能够做这样的事情:
=Table.TransformColumns(Table1, {"Column A", each if [Column B]=1 then "Z" else _ })
这将导致:
Column A | Column B
-------------------
Z | 1
Y | 2
我知道有很多方法可以做到这一点,但我试图找到一个用最少的步骤/转换。例如,我知道我可以使用Table.AddColumn基础上添加,着眼于B柱的函数新 A列,但后来我不得不删除原来的列A,并与新的A柱取代它需要多额外的步骤。
这笔交易主要是我必须用几个不同的表来做这件事,它感觉像是可以在1步vs几个(即创建新列,删除旧列,重命名新列)。此外,我必须对每个表执行多列操作,并且TransformColumns的优点在于它可以一次应用于多个列,而AddColumn则一次添加一个列。我有一个潜在的解决方案,将表转换为记录列表并使用稍后可以分享的Record.TransformFields。 – LoganTheSnowEater
尽管如此,您仍然需要一个用于转换结果的新列。 – teylyn