【发布时间】:2021-07-26 15:09:06
【问题描述】:
我有一个 Power Query 表,其中有一列值介于 1 和 12 之间。
我想用一组固定值替换数字,如下表所示。
Period Number Period Text
1 Jan
2 Feb
3 Mar
4 Apr
5 May
6 Jun
7 Jul
8 Aug
9 Sep
10 Oct
11 Nov
12 Dec
我看到了一个使用List.Zip 的解决方案,它可以“压缩”这些值,如下所示:
periodNumber = Table.Column(#"Prev Step", "Period Number"),
periodText = Table.Column(#"Prev Step", "Period Text"),
#"periodRename" = List.Zip({periodNumber, periodText}),
List.Zip 看起来像这样。每条记录内有两个元素。
然后使用它们通过替换为压缩值来重命名列,如下所示:
= Table.RenameColumns(#"Another Prev Step", #"periodRename")
除了Table.RenameColumns,还有什么函数可以利用这个结构?也许某种形式的Table.ReplaceValue?
我的表格有一列有 1000 行,并且按如下顺序排列。
Period Number
1
2
3
4
5
6
7
8
9
10
11
12
1
2
3
4
5
6
7
8
9
10
11
12
1
2
etc
我想用它们的句号文本替换所有这些句号。
我喜欢使用List.Zip 的想法,因为它提供了一个动态的周期列表,因为有时数据不会包含完整的 12 个周期,例如只有 3 个周期。期间也可以是季度,例如 periodNumber = [1, 2, 3, 4] 和 periodText = [Q1, Q2, Q3, Q4] 或年份。
是否有其他方法可以使用List.Zip 替换表值向下一列而不是跨表列?
注意:期间编号与特定月份不对应。开始可以是任何一个月,为期 12 个月。所以他们的时期文本会改变。因此需要动态获取它们。
【问题讨论】:
-
大多数人只是合并到一个日期表中
标签: powerbi powerquery