gpt4 book ai didi

excel - Power Query 根据另一列转换一列

转载 作者:行者123 更新时间:2023-12-02 03:00:47 25 4
gpt4 key购买 nike

我一直认为这应该很容易,但答案却让我逃避。在 Excel Power Query 中,我想根据另一列的值转换列每一行中的值。例如,假设我的 Table1 如下:

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 A 列需要多个额外步骤。

最佳答案

这就是我最终这样做的方法:

Table1:
Column A | Column B
-------------------
X | 1
Y | 2

= Table.FromRecords(Table.TransformRows(Table1,
(r) => Record.TransformFields(r,
{"A", each if r[Column B]="1" then "Z" else _})))

结果:

Column A | Column B
-------------------
Z | 1
Y | 2

这样,您就可以通过在 Record.TransformFields 函数中使用嵌套列表来一次转换多个列。

关于excel - Power Query 根据另一列转换一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31548135/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com