【发布时间】:2021-03-12 22:21:57
【问题描述】:
我正在尝试解决 pyspark 的问题,
我有一个数据集,例如:
Condition | Date
0 | 2019/01/10
1 | 2019/01/11
0 | 2019/01/15
1 | 2019/01/16
1 | 2019/01/19
0 | 2019/01/23
0 | 2019/01/25
1 | 2019/01/29
1 | 2019/01/30
我想获取遇到condition == 1时日期列的最新滞后值
所需的输出类似于:
Condition | Date | Lag
0 | 2019/01/10 | NaN
1 | 2019/01/11 | NaN
0 | 2019/01/15 | 2019/01/11
1 | 2019/01/16 | 2019/01/11
1 | 2019/01/19 | 2019/01/16
0 | 2019/01/23 | 2019/01/19
0 | 2019/01/25 | 2019/01/19
1 | 2019/01/29 | 2019/01/19
1 | 2019/01/30 | 2019/01/29
我该怎么做?
请记住,它是一个非常大的数据集 - 我必须按 UUID 对其进行分区和分组,因此解决方案必须具有一定的性能。
谢谢,
【问题讨论】:
标签: apache-spark pyspark apache-spark-sql