Ich verwende saveAsTextFile(path)
, um später die Ausgabe als Textdatei zu speichern, um das Ergebnis in die DB zu importieren. Die Ausgabe sieht ungefähr so aus:
Wie entfernen Sie die Klammern?
Bevor Sie saveAsTextFile
verwenden, verwenden Sie map(x => x.mkString(",")
rdd.map(x => x.mkString(",").saveAsTextFile(path)
Der Ausgang hat keine Klammer.
Für die Leute in der Java-Welt gibt es hier eine Lösung, die mit einem DataFrame beginnt, sie in eine RDD konvertiert und dann die Ergebnisse schreibt. Die Zeilen der RDD werden über die Kartenfunktion übergeben, die die Zeile in eine Zeichenfolge konvertiert.
%Vor%Sie können rdd speichern, indem Sie rdd.map (rec = & gt; rec.productIterator.mkString (","). saveAsTextFile (Pfad) Der resultierende Datensatz enthält keine runden Klammern.
Ich weiß, dass es mit Scala getaggt ist, aber nur um Pythons Seite hinzuzufügen, falls jemand neugierig ist. Erstellen Sie die RDD und speichern Sie sie wie
%Vor%Dies wird die Zeilen so speichern, wie Sie es erwähnen
%Vor%Aber wenn Sie Folgendes tun, sollte es funktionieren
%Vor%Und du solltest
bekommen %Vor%Beachten Sie, dass Sie in diesem speziellen Fall die Typen für die Verkettung kennen müssen (überprüfen Sie die str (y)), andernfalls würden Sie die folgende Ausnahme erhalten:
%Vor%Tags und Links scala apache-spark