array_join
Renvoie 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 nulles au sein du tableau peuvent être remplacées par une chaîne spécifiée par l'intermédiaire de l'argument null_replacement. Si null_replacement n'est pas défini, les valeurs nulles sont ignorées.
Syntaxe
from pyspark.sql import functions as sf
sf.array_join(col, delimiter, null_replacement=None)
parameter
parameter | Type | Description |
|---|---|---|
|
| La colonne de saisie contenant les tableaux à joindre. |
| str | La chaîne à utiliser comme délimiteur lors de la jonction des éléments du tableau. |
| str, facultatif | La chaîne à utiliser pour remplacer les valeurs nulles dans le tableau. S'il n'est pas défini, les valeurs nulles sont ignorées. |
Renvoie
pyspark.sql.Column: Nouvelle colonne de type chaîne de caractères, où chaque valeur est le résultat de la jointure du tableau correspondant de la colonne d'entrée.
Exemples
**Exemple 1** : Utilisation de base de la fonction array_join.
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 l'argument null_replacement.
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 la fonction array_join sans l’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 la fonction array_join avec un tableau nul.
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 la fonction array_join avec un tableau contenant uniquement des valeurs nulles.
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|
+-------------------------+