Kombinieren von Spalten in Apache Spark DataFrames
Apache Spark bietet mehrere Ansätze zum Verketten von Spalten innerhalb eines DataFrame.
Nutzung der SQL CONCAT-Funktion
Bei direkten SQL-Abfragen erleichtert die integrierte CONCAT
-Funktion von Spark das Zusammenführen von Spalten.
Python-Illustration:
<code class="language-python">df = sqlContext.createDataFrame([("foo", 1), ("bar", 2)], ("k", "v")) df.registerTempTable("df") sqlContext.sql("SELECT CONCAT(k, ' ', v) FROM df")</code>
Scala-Illustration:
<code class="language-scala">import sqlContext.implicits._ val df = sc.parallelize(Seq(("foo", 1), ("bar", 2))).toDF("k", "v") df.registerTempTable("df") sqlContext.sql("SELECT CONCAT(k, ' ', v) FROM df")</code>
Verwendung der concat-Funktion der DataFrame-API (Spark 1.5.0)
Die DataFrame-API bietet eine concat
Funktion für diese Aufgabe.
Python-Illustration:
<code class="language-python">from pyspark.sql.functions import concat, col, lit df.select(concat(col("k"), lit(" "), col("v")))</code>
Scala-Illustration:
<code class="language-scala">import org.apache.spark.sql.functions.{concat, lit} df.select(concat($"k", lit(" "), $"v"))</code>
Einsatz der concat_ws-Funktion
Die Funktion concat_ws
bietet den Vorteil, ein benutzerdefiniertes Trennzeichen anzugeben.
Python-Illustration:
<code class="language-python">from pyspark.sql.functions import concat_ws, lit df.select(concat_ws(" ", col("k"), lit(" "), col("v")))</code>
Scala-Illustration:
<code class="language-scala">import org.apache.spark.sql.functions.{concat_ws, lit} df.select(concat_ws(" ", $"k", lit(" "), $"v"))</code>
Diese Techniken ermöglichen eine unkomplizierte Spaltenverkettung innerhalb von Apache Spark DataFrames und erweisen sich für verschiedene Datenmanipulationsaufgaben als unschätzbar wertvoll.
Das obige ist der detaillierte Inhalt vonWie kann ich Spalten in einem Apache Spark-DataFrame verketten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!