Spark RDD zu DataFrame Python

8

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.

    
Jack Daniel 26.09.2016, 09:24
quelle

2 Antworten

25

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.

toDF ()

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.

%Vor%

Auf diese Weise können Sie einen Datenrahmen dynamisch erstellen.

createDataFrame (rdd, Schema)

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.

    
Thiago Baldim 26.09.2016, 14:25
quelle
0
%Vor%     
Arun Sharma 26.03.2018 05:02
quelle