Retieve top n in jeder Gruppe eines DataFrame in pyspark

Es gibt einen DataFrame in Pyspark mit folgenden Daten:

user_id object_id score
user_1  object_1  3
user_1  object_1  1
user_1  object_2  2
user_2  object_1  5
user_2  object_2  2
user_2  object_2  6

Was ich erwarte, gibt 2 Datensätze in jeder Gruppe mit derselben user_id zurück, die die höchste Punktzahl haben müssen. Folglich sollte das Ergebnis wie folgt aussehen:

user_id object_id score
user_1  object_1  3
user_1  object_2  2
user_2  object_2  6
user_2  object_1  5

Ich bin wirklich neu bei Pyspark. Kann mir jemand einen Codeausschnitt oder ein Portal zur zugehörigen Dokumentation dieses Problems geben? Vielen Dank

Antworten auf die Frage(6)

Ihre Antwort auf die Frage