我有具有当前结构的数据框
user_id | country | event |
1 | CA | 1 |
2 | USA | 1 |
我想添加周期范围为(0-n)的新列,并得到类似的内容
user_id | country | event |period|
1 | CA | 1 |1
1 | CA | 1 |2
1 | CA | 1 |...
1 | CA | 1 |n
2 | USA | 1 |1
2 | USA | 1 |2
2 | USA | 1 |...
2 | USA | 1 |n
据我了解,它应该是一些窗口函数和withColumn
函数
w = (Window.partitionBy(['user_id','country','event'])
df = df.withColumn('period',(???).over(w))
如何添加新列,并同时按一定范围添加新行?