Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Devolve uma nova coluna do array adicionando um valor ao array existente.
Adicionado no Databricks Runtime 12.2 LTS
Sintaxe
from pyspark.sql import functions as sf
sf.array_append(col, value)
Parâmetros
| Parâmetro | Tipo | Description |
|---|---|---|
col |
pyspark.sql.Column ou str |
O nome da coluna que contém o array. |
value |
Qualquer | Um valor literal, ou uma expressão Column a ser adicionada ao array. |
Devoluções
pyspark.sql.Column: Uma nova coluna do array com value anexada ao array original.
Examples
Exemplo 1: Adicionar um valor de coluna a uma coluna de array
from pyspark.sql import Row, functions as sf
df = spark.createDataFrame([Row(c1=["b", "a", "c"], c2="c")])
df.select(sf.array_append(df.c1, df.c2)).show()
+--------------------+
|array_append(c1, c2)|
+--------------------+
| [b, a, c, c]|
+--------------------+
Exemplo 2: Adicionar um valor numérico a uma coluna de array
from pyspark.sql import functions as sf
df = spark.createDataFrame([([1, 2, 3],)], ['data'])
df.select(sf.array_append(df.data, 4)).show()
+---------------------+
|array_append(data, 4)|
+---------------------+
| [1, 2, 3, 4]|
+---------------------+
Exemplo 3: Adicionar um valor nulo a uma coluna de array
from pyspark.sql import functions as sf
df = spark.createDataFrame([([1, 2, 3],)], ['data'])
df.select(sf.array_append(df.data, None)).show()
+------------------------+
|array_append(data, NULL)|
+------------------------+
| [1, 2, 3, NULL]|
+------------------------+
Exemplo 4: Adicionar um valor a uma coluna de um array NULL
from pyspark.sql import functions as sf
from pyspark.sql.types import ArrayType, IntegerType, StructType, StructField
schema = StructType([
StructField("data", ArrayType(IntegerType()), True)
])
df = spark.createDataFrame([(None,)], schema=schema)
df.select(sf.array_append(df.data, 4)).show()
+---------------------+
|array_append(data, 4)|
+---------------------+
| NULL|
+---------------------+
Exemplo 5: Adicionar um valor a um array vazio
from pyspark.sql import functions as sf
from pyspark.sql.types import ArrayType, IntegerType, StructType, StructField
schema = StructType([
StructField("data", ArrayType(IntegerType()), True)
])
df = spark.createDataFrame([([],)], schema=schema)
df.select(sf.array_append(df.data, 1)).show()
+---------------------+
|array_append(data, 1)|
+---------------------+
| [1]|
+---------------------+