用Pyspark中去年的值创建一个新列



我有一个日期集,其中包含日期和每个日期的值以及该值所指的特定单位。我需要的是一个新的列,它给出了正好一年前这个单位的值。我想在PySpark中这样做,但到目前为止我还没有成功。

例子
Time        Unit  Value  Value_lastYear
21-12-2022  1     3      5
21-12-2021  1     5      8
21-12-2022  2     6      7

谁有好主意?

你可以像这样从时间戳中减去365天:

df = df.withColumn('new_time', F.date_sub(F.col('Time'), 365))

最新更新