Pular para o conteúdo principal

junção_de_array

Retorna uma coluna de strings concatenando os elementos da coluna da matriz de entrada usando o delimitador. Os valores nulos dentro da matriz podem ser substituídos por strings específicas através do argumento `null_replacement`. Se null_replacement não estiver definido, os valores nulos serão ignorados.

Sintaxe

Python
from pyspark.sql import functions as sf

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

Parâmetros

Parâmetro

Tipo

Descrição

col

pyspark.sql.Column ou str

A coluna de entrada contendo os arrays a serem unidos.

delimiter

str

As strings a serem usadas como delimitador ao unir os elementos da matriz.

null_replacement

str, opcional

As strings que substituirão os valores nulos dentro da matriz. Se não forem definidos, os valores nulos serão ignorados.

Devoluções

pyspark.sql.ColumnUma nova coluna do tipo string, onde cada valor é o resultado da junção do array correspondente da coluna de entrada.

Exemplos

Exemplo 1 : Uso básico da função array_join.

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

Exemplo 2 : Utilização da função array_join com o argumento null_replacement.

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

Exemplo 3 : Utilização da função array_join sem o argumento null_replacement.

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

Exemplo 4 : Utilização da função array_join com um array nulo.

Python
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()
Output
+-------------------+
|array_join(data, ,)|
+-------------------+
| NULL|
+-------------------+

Exemplo 5 : Utilização da função array_join com um array contendo apenas valores nulos.

Python
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()
Output
+-------------------------+
|array_join(data, ,, NULL)|
+-------------------------+
| NULL,NULL|
+-------------------------+