如何根据存储的开始和结束日期了解任何给定日期的活动事件总数?在画面中
How to know total number of active events on any given date based on their start and end dates stored? in Tableau
在我的数据集中,存储了 ID
、start date
和 end 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
我想要任何日期(从第一个开始日期开始到最后一个结束日期结束)有多少现场活动。活动在 start
和 end
日期均被计为直播。示例输出可能是这样的。
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 date
和 end date
列并旋转它们。 (注意:如果在将列名称旋转为 'Start' 和 'End' 之前更改列名称会更好。这将在一列中为您提供值 Start
和 End
,并且另一个日期。相应地重命名这两列,分别说 type
和 Dates
)
Step-2 添加一个计算字段 say dummy
使用以下计算-
IIF([type]='Start', 1,-1)
Step-3 开始构建视图,按 Dates
行(确切日期,谨慎),右键单击它并选中 'show missing values'。将 sum(dummy) 添加到文本。加上running total
table计算就可以了。你会得到这样的结果。
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
截图
在我的数据集中,存储了 ID
、start date
和 end 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
我想要任何日期(从第一个开始日期开始到最后一个结束日期结束)有多少现场活动。活动在 start
和 end
日期均被计为直播。示例输出可能是这样的。
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 date
和 end date
列并旋转它们。 (注意:如果在将列名称旋转为 'Start' 和 'End' 之前更改列名称会更好。这将在一列中为您提供值 Start
和 End
,并且另一个日期。相应地重命名这两列,分别说 type
和 Dates
)
Step-2 添加一个计算字段 say dummy
使用以下计算-
IIF([type]='Start', 1,-1)
Step-3 开始构建视图,按 Dates
行(确切日期,谨慎),右键单击它并选中 'show missing values'。将 sum(dummy) 添加到文本。加上running total
table计算就可以了。你会得到这样的结果。
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
截图