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
Libérer: 2025-01-18 18:42:13
original
255 Les gens l'ont consulté

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")
Copier après la connexion

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")
Copier après la connexion

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")))
Copier après la connexion

En Scala :

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

df.select(concat($"k", lit(" "), $"v"))
Copier après la connexion

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")))
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal