Partager via


array_join

Retourne une colonne de chaîne en concaténant les éléments de la colonne de tableau d’entrée à l’aide du délimiteur. Les valeurs Null dans le tableau peuvent être remplacées par une chaîne spécifiée par le biais de l’argument null_replacement. Si null_replacement n’est pas défini, les valeurs Null sont ignorées.

Syntaxe

from pyspark.sql import functions as sf

sf.array_join(col, delimiter, null_replacement=None)

Paramètres

Paramètre Type Descriptif
col pyspark.sql.Column ou str Colonne d’entrée contenant les tableaux à joindre.
delimiter str Chaîne à utiliser comme délimiteur lors de la jointure des éléments de tableau.
null_replacement str, facultatif Chaîne à remplacer des valeurs null dans le tableau. Si ce n’est pas le cas, les valeurs Null sont ignorées.

Retours

pyspark.sql.Column: nouvelle colonne de type chaîne, où chaque valeur est le résultat de la jointure du tableau correspondant à partir de la colonne d’entrée.

Examples

Exemple 1 : Utilisation de base de array_join fonction.

from pyspark.sql import functions as sf
df = spark.createDataFrame([(["a", "b", "c"],), (["a", "b"],)], ['data'])
df.select(sf.array_join(df.data, ",")).show()
+-------------------+
|array_join(data, ,)|
+-------------------+
|              a,b,c|
|                a,b|
+-------------------+

Exemple 2 : Utilisation de la fonction array_join avec null_replacement argument.

from pyspark.sql import functions as sf
df = spark.createDataFrame([(["a", None, "c"],)], ['data'])
df.select(sf.array_join(df.data, ",", "NULL")).show()
+-------------------------+
|array_join(data, ,, NULL)|
+-------------------------+
|                 a,NULL,c|
+-------------------------+

Exemple 3 : Utilisation de array_join fonction sans argument null_replacement.

from pyspark.sql import functions as sf
df = spark.createDataFrame([(["a", None, "c"],)], ['data'])
df.select(sf.array_join(df.data, ",")).show()
+-------------------+
|array_join(data, ,)|
+-------------------+
|                a,c|
+-------------------+

Exemple 4 : Utilisation de array_join fonction avec un tableau qui est null.

from pyspark.sql import functions as sf
from pyspark.sql.types import StructType, StructField, ArrayType, StringType
schema = StructType([StructField("data", ArrayType(StringType()), True)])
df = spark.createDataFrame([(None,)], schema)
df.select(sf.array_join(df.data, ",")).show()
+-------------------+
|array_join(data, ,)|
+-------------------+
|               NULL|
+-------------------+

Exemple 5 : Utilisation de array_join fonction avec un tableau contenant uniquement des valeurs Null.

from pyspark.sql import functions as sf
from pyspark.sql.types import StructType, StructField, ArrayType, StringType
schema = StructType([StructField("data", ArrayType(StringType()), True)])
df = spark.createDataFrame([([None, None],)], schema)
df.select(sf.array_join(df.data, ",", "NULL")).show()
+-------------------------+
|array_join(data, ,, NULL)|
+-------------------------+
|                NULL,NULL|
+-------------------------+