Tableau 中未显示 1 月第一周的周数

Week number for first week of Jan not showing in Tableau

我有以下数据结构:

然后我使用了以下 Tableau 函数将周数和年份转换为一周的第一天: DATE(DATETRUNC('week',DATEPARSE("w-yyyy",STR([Week Number])+"-"+ STR([year_axis]))))

问题是,当它到达第 1 周和 2021 年时,它没有显示第 04/01/2021 周,而是将此数据汇总到 12 月的最后一周 (28/12/2020)。

有人知道为什么吗?

谢谢!

是的,根据您所在的区域设置,画面在星期日或星期一开始一周。此外,如果一年的第一天不是星期一,则第一个星期一之前的日期被视为该年的第 0 周。

在这种情况下建议使用此计算(对于较新版本的 tableau desktop)

DATE(DATETRUNC('week',
IF ISOWEEKDAY(DATEPARSE("w-yyyy",STR([Week Number])+"-"+ STR([Year Axis]))) =1
then DATEPARSE("w-yyyy",STR([Week Number])+"-"+ STR([Year Axis]))
else DATEPARSE("w-yyyy",STR([Week Number]+1)+"-"+ STR([Year Axis]))
END
))

未列出ISOWEEKDAY的tableau版本,建议计算如下

DATE(DATETRUNC('week',
IF DATEPART('weekday', DATEPARSE("w-yyyy",STR([Week Number])+"-"+ STR([Year Axis]))) =1
then DATEPARSE("w-yyyy",STR([Week Number])+"-"+ STR([Year Axis]))
else DATEPARSE("w-yyyy",STR([Week Number]+1)+"-"+ STR([Year Axis]))
END
))

如果年的第一天是星期一,则 your calculated field 否则 week+1

查看比较两种计算的屏幕截图。 (2018 年备注)

希望这能解决您的问题。