Maison >base de données >tutoriel mysql >Comment concaténer des colonnes dans un DataFrame Apache Spark ?

Comment concaténer des colonnes dans un DataFrame Apache Spark ?

Patricia Arquette
Patricia Arquetteoriginal
2025-01-18 18:42:13308parcourir

How to Concatenate Columns in an Apache Spark DataFrame?

Concaténation de colonnes dans un DataFrame Apache Spark

Dans Apache Spark, vous pouvez concaténer des colonnes dans un DataFrame à l'aide de SQL brut ou de l'API DataFrame introduite dans Spark 1.5.0 .

Utilisation de Raw SQL

Pour concaténer des colonnes à l'aide de Raw SQL, utilisez la fonction CONCAT :

En Python :

df = sqlContext.createDataFrame([("foo", 1), ("bar", 2)], ("k", "v"))
df.registerTempTable("df")
sqlContext.sql("SELECT CONCAT(k, ' ',  v) FROM df")

En 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")

Utilisation de l'API DataFrame

Depuis Spark 1.5.0, vous pouvez utiliser la fonction concat avec l'API DataFrame :

En Python :

from pyspark.sql.functions import concat, col, lit

df.select(concat(col("k"), lit(" "), col("v")))

En Scala :

import org.apache.spark.sql.functions.{concat, lit}

df.select(concat($"k", lit(" "), $"v"))

En utilisant concat_ws

Il y a également la fonction concat_ws, qui prend un séparateur de chaîne comme premier argument :

df.select(concat_ws("-", col("k"), col("v")))

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn