Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gibt ein Array von Elementen zurück, nachdem eine Transformation auf jedes Element im Eingabearray angewendet wurde. Unterstützt Spark Connect.
Die entsprechende Databricks SQL-Funktion finden Sie unter transform Funktion.
Syntax
from pyspark.databricks.sql import functions as dbf
dbf.transform(col=<col>, f=<f>)
Die Parameter
| Parameter | Typ | Description |
|---|---|---|
col |
pyspark.sql.Column oder str |
Name der Spalte oder des Ausdrucks. |
f |
function |
Eine Funktion, die auf jedes Element des Eingabearrays angewendet wird. Kann eine der folgenden Formen annehmen: "Unary (x: Column) -> Column " oder "Binary (x: Column, i: Column) -> Column ", wobei das zweite Argument ein 0-basierter Index des Elements ist. |
Rückkehr
pyspark.sql.Column: ein neues Array von transformierten Elementen.
Examples
Beispiel 1: Transformieren von Arrayelementen mit einer einfachen Funktion
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(1, [1, 2, 3, 4])], ("key", "values"))
df.select(dbf.transform("values", lambda x: x * 2).alias("doubled")).show()
+------------+
| doubled|
+------------+
|[2, 4, 6, 8]|
+------------+
Beispiel 2: Transformieren von Arrayelementen mithilfe von Index
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(1, [1, 2, 3, 4])], ("key", "values"))
def alternate(x, i):
return dbf.when(i % 2 == 0, x).otherwise(-x)
df.select(dbf.transform("values", alternate).alias("alternated")).show()
+--------------+
| alternated|
+--------------+
|[1, -2, 3, -4]|
+--------------+