Freigeben über


array_prepend

Gibt ein Array zurück, das das angegebene Element als erstes Element und die restlichen Elemente aus dem ursprünglichen Array enthält.

Hinzugefügt in Databricks Runtime 13.1

Syntax

from pyspark.sql import functions as sf

sf.array_prepend(col, value)

Die Parameter

Parameter Typ Description
col pyspark.sql.Column oder str Name der Spalte mit Array
value Beliebig Ein Literalwert oder ein Column-Ausdruck.

Rückkehr

pyspark.sql.Column: ein Array mit dem angegebenen Wert vorangestellt.

Examples

Beispiel 1: Vor dem Ausstehen eines Spaltenwerts für eine Arrayspalte

from pyspark.sql import Row, functions as sf
df = spark.createDataFrame([Row(c1=["b", "a", "c"], c2="c")])
df.select(sf.array_prepend(df.c1, df.c2)).show()
+---------------------+
|array_prepend(c1, c2)|
+---------------------+
|         [c, b, a, c]|
+---------------------+

Beispiel 2: Vor dem Ausstehen eines numerischen Werts für eine Arrayspalte

from pyspark.sql import functions as sf
df = spark.createDataFrame([([1, 2, 3],)], ['data'])
df.select(sf.array_prepend(df.data, 4)).show()
+----------------------+
|array_prepend(data, 4)|
+----------------------+
|          [4, 1, 2, 3]|
+----------------------+

Beispiel 3: Vor dem Ausstehen eines NULL-Werts für eine Arrayspalte

from pyspark.sql import functions as sf
df = spark.createDataFrame([([1, 2, 3],)], ['data'])
df.select(sf.array_prepend(df.data, None)).show()
+-------------------------+
|array_prepend(data, NULL)|
+-------------------------+
|          [NULL, 1, 2, 3]|
+-------------------------+

Beispiel 4: Vor dem Ausstehen eines Werts in einer NULL-Arrayspalte

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_prepend(df.data, 4)).show()
+----------------------+
|array_prepend(data, 4)|
+----------------------+
|                  NULL|
+----------------------+

Beispiel 5: Vor dem Ausstehen eines Werts für ein leeres Array

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_prepend(df.data, 1)).show()
+----------------------+
|array_prepend(data, 1)|
+----------------------+
|                   [1]|
+----------------------+