Rumah >pangkalan data >tutorial mysql >Bagaimanakah saya boleh menggabungkan lajur dalam Apache Spark DataFrame?

Bagaimanakah saya boleh menggabungkan lajur dalam Apache Spark DataFrame?

Patricia Arquette
Patricia Arquetteasal
2025-01-18 18:46:11697semak imbas

How Can I Concatenate Columns in an Apache Spark DataFrame?

Menggabungkan Lajur dalam Apache Spark DataFrames

Apache Spark menawarkan pelbagai pendekatan untuk menggabungkan lajur dalam DataFrame.

Memanfaatkan Fungsi SQL CONCAT

Untuk pertanyaan SQL langsung, fungsi CONCAT terbina dalam Spark memudahkan penggabungan lajur.

Ilustrasi Python:

<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>

Ilustrasi Scala:

<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>

Menggunakan Fungsi concat API DataFrame (Spark 1.5.0 )

API DataFrame menyediakan fungsi concat untuk tugasan ini.

Ilustrasi Python:

<code class="language-python">from pyspark.sql.functions import concat, col, lit

df.select(concat(col("k"), lit(" "), col("v")))</code>

Ilustrasi Scala:

<code class="language-scala">import org.apache.spark.sql.functions.{concat, lit}

df.select(concat($"k", lit(" "), $"v"))</code>

Menggunakan Fungsi concat_ws

Fungsi concat_ws menawarkan kelebihan untuk menentukan pemisah tersuai.

Ilustrasi Python:

<code class="language-python">from pyspark.sql.functions import concat_ws, lit

df.select(concat_ws(" ", col("k"), lit(" "), col("v")))</code>

Ilustrasi Scala:

<code class="language-scala">import org.apache.spark.sql.functions.{concat_ws, lit}

df.select(concat_ws(" ", $"k", lit(" "), $"v"))</code>

Teknik ini membolehkan penggabungan lajur yang mudah dalam Apache Spark DataFrames, terbukti tidak ternilai untuk pelbagai tugas manipulasi data.

Atas ialah kandungan terperinci Bagaimanakah saya boleh menggabungkan lajur dalam Apache Spark DataFrame?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn