如何在 Power Query M 中按给定日期查找 4 周滚动周期的周数
Posted
技术标签:
【中文标题】如何在 Power Query M 中按给定日期查找 4 周滚动周期的周数【英文标题】:How to find week number of 4 week rolling cycle by given date in Power Query M 【发布时间】:2021-10-29 15:03:52 【问题描述】:我有一个使用 Power Query 构建的日历表,我需要使用它来添加一个以 4 周为周期的列,我可以跟踪每周任务。
例子
A 列是从 2019 年 1 月 1 日到 2022 年 12 月 31 日的所有日期
B 列是周序列,例如
01/01/2019 -> 07/01/2019 是 1
08/01/2019 -> 14/01/2019 是 2
04/10/2021 -> 10/10/2021 是 145
如果我从第 145 周开始,我将如何在给定任何日期的 4 周周期中计算出周数。所以如果
第 145 周是任务 A
第 146 周是任务 B
第 147 周是任务 C
第 148 周是任务 D
第 149 周是任务 A,依此类推。
如果我在第 158 周的 4 周内要求任务,我会得到任务 B,因为它是重复周期的第二周。
【问题讨论】:
【参考方案1】:我不确定我是否正确理解了您的需求。您是否需要一个额外的列来指示基于 4 周期的一周任务?
如果是这种情况,我认为您可能正在寻找的是 mod 功能: https://docs.microsoft.com/de-de/powerquery-m/number-mod
使用 mod 创建一个新列并除以 4。 然后根据 Mod 列的结果创建一个 if 列。如果 0 --> “任务 A”,1 --> “任务 B”,等等。
问候!
【讨论】:
谢谢@Adrian Fischer,找到我需要的东西。 Number.Mod(WeekSequence,4) 返回值 0,1,2,3,该值在一周中的每一天重复。有了条件,我可以将任务 A 添加到所有 1 的任务 B 到所有 2 等以上是关于如何在 Power Query M 中按给定日期查找 4 周滚动周期的周数的主要内容,如果未能解决你的问题,请参考以下文章
Power Query M - 使用自定义聚合(百分位)按列值分组