Wie kann ich die folgenden Werte angeben, aber wie kann ich die maximalen Werte pivotieren, aber die Summe der Spiele zusammenfassen?Spark Pivot eine Spalte, aber andere intakt halten
from pyspark import SparkContext
from pyspark.sql import HiveContext
from pyspark.sql import functions as F
from pyspark.sql import Window
df = sqlContext.createDataFrame([
("u1", "g1", 10, 0, 1),
("u1", "g3", 2, 2, 1),
("u1", "g3", 5, 3, 1),
("u1", "g4", 5, 4, 1),
("u2", "g2", 1, 1, 1),
], ["UserID", "GameID", "Score", "Time", "Plays"])
gewünschte Ausgabe
+------+-------------+-------------+-----+
|UserID|MaxScoreGame1|MaxScoreGame2|Plays|
+------+-------------+-------------+-----+
| u1| 10| 5| 4|
| u2| 1| null| 1|
+------+-------------+-------------+-----+
gab ich eine Lösung unten, aber ich bin der Hoffnung, mit zu vermeiden verbinden.