Compartir a través de


array_join

Devuelve una columna de cadena mediante la concatenación de los elementos de la columna de matriz de entrada mediante el delimitador. Los valores NULL dentro de la matriz se pueden reemplazar por una cadena especificada a través del argumento null_replacement. Si no se establece null_replacement, se omiten los valores NULL.

Syntax

from pyspark.sql import functions as sf

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

Parámetros

Parámetro Tipo Description
col pyspark.sql.Column o str Columna de entrada que contiene las matrices que se van a combinar.
delimiter str Cadena que se va a usar como delimitador al unir los elementos de matriz.
null_replacement str, opcional Cadena que se va a reemplazar valores NULL dentro de la matriz. Si no se establece, se omiten los valores NULL.

Devoluciones

pyspark.sql.Column: una nueva columna de tipo de cadena, donde cada valor es el resultado de unir la matriz correspondiente de la columna de entrada.

Examples

Ejemplo 1: Uso básico de array_join función.

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

Ejemplo 2: Uso de array_join función con null_replacement argumento.

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

Ejemplo 3: Uso de array_join función sin null_replacement argumento.

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

Ejemplo 4: Uso de array_join función con una matriz que es 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|
+-------------------+

Ejemplo 5: Uso de array_join función con una matriz que solo contiene valores 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|
+-------------------------+