0
我的數據是這樣如何選擇
ID | Race | start | duration
-------|---------| ------| ---------
234 | 1010 | turtle| 100
235 | 1010 | turtle| 101
236 | 1010 | turtle| 99
237 | 1010 | rabbit| 199
238 | 1010 | rabbit| 201
239 | 1010 | rabbit| 85
240 | 9898 | rabbit| 185
241 | 9898 | rabbit| 205
242 | 9898 | rabbit| 505
243 | 9898 | turtle| 155
244 | 9898 | turtle| 104
從這個從一列的多行兩行,我想選擇:
- 一個
turtle
和一個rabbit
從每組 - 其中必須具有最少的持續時間在其組
例如:
基於以上數據,結果應該是:
ID | Race | start | duration
-------|---------| ------| ---------
236 | 1010 | turtle| 99
239 | 1010 | rabbit| 85
240 | 9898 | rabbit| 185
244 | 9898 | turtle| 104
我做了什麼:
w = Window().partitionBy("race").orderBy(col("duration").desc())
(df
.withColumn("rn", rowNumber().over(w))
.where(col("rn") == 1)
.select("race", "duration")).show()
然而,這組數據和我沒有收到預期的效果。
'partitionBy(「種族」,「啓動「)'? – zero323