预期结果
已尝试所有分组和条件,但不起作用
vqlkdk9b1#
您可以通过窗口功能实现这一点,如下所示:
from pyspark.sql.window import Window from pyspark.sql.functions import row_number window = Window.partitionBy("user").orderBy("timestamp") df.withColumn("order", row_number().over(window)).show() +----+---------+-----+ |user|timestamp|order| +----+---------+-----+ | 111| 12:00| 1| | 111| 12:30| 2| | 111| 12:45| 3| | 112| 12:00| 1| | 112| 12:30| 2| | 112| 12:45| 3| | 113| 12:00| 1| | 113| 12:30| 2| | 113| 12:45| 3| +----+---------+-----+
1条答案
按热度按时间vqlkdk9b1#
您可以通过窗口功能实现这一点,如下所示: