如何根据存储的开始和结束日期了解任何给定日期的活动事件总数?在画面中

How to know total number of active events on any given date based on their start and end dates stored? in Tableau

在我的数据集中,存储了 IDstart dateend date 的事件。此类数据的样本可以作为

Event Id    Start Date  End Date
1   01-01-2020  05-01-2020
2   02-01-2020  07-01-2020
3   05-01-2020  08-01-2020
4   07-01-2020  10-01-2020

我想要任何日期(从第一个开始日期开始到最后一个结束日期结束)有多少现场活动。活动在 startend 日期均被计为直播。示例输出可能是这样的。

Date    number of live events
1 January 2020  1
2 January 2020  2
3 January 2020  2
4 January 2020  2
5 January 2020  3
6 January 2020  2
7 January 2020  3
8 January 2020  2
9 January 2020  1
10 January 2020 1
11 January 2020 0

在 tableau 中应该怎么做?

这个问题可以在 tableau 中通过这样进行来解决。

Step-1 Select start dateend date 列并旋转它们。 (注意:如果在将列名称旋转为 'Start' 和 'End' 之前更改列名称会更好。这将在一列中为您提供值 StartEnd,并且另一个日期。相应地重命名这两列,分别说 typeDates)

Step-2 添加一个计算字段 say dummy 使用以下计算-

IIF([type]='Start', 1,-1)

Step-3 开始构建视图,按 Dates 行(确切日期,谨慎),右键单击它并选中 'show missing values'。将 sum(dummy) 添加到文本。加上running totaltable计算就可以了。你会得到这样的结果。

Dates   
01-01-2020  1
02-01-2020  2
03-01-2020  2
04-01-2020  2
05-01-2020  2
06-01-2020  2
07-01-2020  2
08-01-2020  1
09-01-2020  1
10-01-2020  0

Step-4 如果您仔细观察,视图中不会计算截止日期的事件。所以添加另一个计算字段Date2,计算如下

IIF([type]='End', DATEADD('day', 1, [Dates]), [Dates])

Step-5 除了使用 Date2 字段而不是 Dates 之外,与步骤 3 完全相同。输出将如您所愿。

Day of dates2   Running Sum of dummy
1 January 2020  1
2 January 2020  2
3 January 2020  2
4 January 2020  2
5 January 2020  3
6 January 2020  2
7 January 2020  3
8 January 2020  2
9 January 2020  1
10 January 2020 1
11 January 2020 0

截图