Ich versuche, die Spark RDD in einen DataFrame zu konvertieren. Ich habe die Dokumentation und das Beispiel gesehen, wo das Schema übergeben wurde
sqlContext.CreateDataFrame(rdd,schema)
-Funktion.
Aber ich habe 38 Spalten oder Felder und dies wird weiter zunehmen. Wenn ich das Schema manuell gebe, das jede Feldinformation spezifiziert, dass es so mühsamer Job ist.
Gibt es eine andere Möglichkeit, das Schema anzugeben, ohne die Informationen der Spalten vorher zu kennen.
Siehe
Es gibt zwei Möglichkeiten, eine RDD in Spark in DF zu konvertieren.
toDF()
und createDataFrame(rdd, schema)
Ich werde Ihnen zeigen, wie Sie das dynamisch machen können.
Der Befehl toDF()
gibt Ihnen die Möglichkeit, ein RDD[Row]
in ein Dataframe umzuwandeln. Der Punkt ist, das Objekt Row()
kann ein **kwargs
Argument erhalten. Also, es gibt eine einfache Möglichkeit, das zu tun.
Auf diese Weise können Sie einen Datenrahmen dynamisch erstellen.
Eine andere Möglichkeit besteht darin, ein dynamisches Schema zu erstellen. Wie?
Auf diese Weise:
%Vor%Dieser zweite Weg ist sauberer ...
So können Sie Datenframes dynamisch erstellen.
Tags und Links python apache-spark pyspark spark-dataframe