Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse 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]|
+--------------+