本文写于2021年,今天整理客户资料发现,没有客户数据,整理发布于博客。
@喜乐君 Apr 28, 2021 PM
目的:帮助客户更好地理解分析过程,问题分析、数据准备和可视化。
反馈问题:prep流程中不能删除当日的预约,理解错误; 可视化的当月关盘应该是移动计算,使用window计算,但是考虑到行级别与聚合的逻辑,还需要更改。 ——待处理
分析需求:
帮助领导查看所选参数月份及次月的房晚预约情况,及长期波动
1、数据源结构:
预订日期 | 提前天数 | 入住日期 | 开盘房数8点 | 关盘房数24点 |
2019/1/1 | 0 | 2019/1/1 | 406 | 205 |
2019/1/1 | 1 | 2019/1/2 | 343 | 157 |
2019/1/1 | 2 | 2019/1/3 | 432 | 256 |
2019/1/1 | 3 | 2019/1/4 | 5 | 363 |
2019/1/1 | 4 | 2019/1/5 | 481 | 254 |
2021/8/9 | 2021/8/9 | |||
- 开盘房晚,对应 预约数量——相当于应收款/预约销售
- 关盘方案,对应 入住数量——相当于确认收入
数据行级别的意义:每天有多少其他各天的预约房晚(开盘),当晚确认的入住房屋数量(关盘)
比如, 预定日期*入住日期 是唯一的。
2、分析需求:
每个日期对应的预约开盘房晚总数,及对应的关盘房晚(关盘确认)
由于 预约日期对应的开盘聚合, 和入住日期对应的 关盘聚合 需要匹配,两种方案:
- 数据混合
- 使用prep聚合后匹配
3、数据准备
基于上述的Excel过程,作为两个分支,分别处理预约日期(上面分支)和入住日期(下分支),分别处理。
预约日期处理:
- 每个预约日期,聚合开盘预约房晚,入住日期按照年月聚合
- 判断预约日期和入住年月,判断是当月预约,还是次月预约,还是其他
- 同时要排除null,即只看当月和次月
- 之后,转置 当日开盘sum-当月预约和 次月预约 为列度量
- 由于转置后,两个度量在不同列,所以需要聚合来处理合并(第一行分支后第四个节点)
入住日期分支
- 排除预约日期=入住日期的关盘
- 查看每个入住日期,以预约日期聚合为年月,查看每天对应的总的确认关盘
- 筛选:只查看当月的关盘聚合
最后的预约日期和入住日期的合并
预约日期和入住日期的维度都是日期,可以认为是结构相同,度量不同。
- 方案1:并集
- 日期并集,默认会有错行(如下),因此需要需要并集
- 方案2:连接
- 两侧都可能有对方没有的,所以全连接,两个不匹配的环节通过后面合并字段,这样不需要聚合
最终结果如下:
- 每天日期(绝对日期,与预约、入住无关) 的当月预约开盘、次月预约开盘、当月确认关盘。
和excel的数据确认核实,无误。
4、可视化:
//////假设:
参数月份=3月 入住月份
坐标轴从2月1日开始~3月底 (和参数日期一致)
——————————
横轴是两个月,
2月份的部分,计算 2预约3月入住的开盘
3月的部分,计算3月的3月预约开盘+3月的关盘
关键:如何实现同比比较? 通过in函数计算。
如果日期超过了today,那么显示为空(这个需求还没有添加)
度量涉及到两种计算
了解 Tableau喜乐君 的更多信息
订阅后即可通过电子邮件收到最新文章。