Dönüştürmek

Giriş dizisindeki her öğeye bir dönüştürme uyguladıktan sonra bir öğe dizisi döndürür. Spark Connect'i destekler.

İlgili Databricks SQL fonksiyonu için bakınız transform fonksiyonu.

Sözdizimi

from pyspark.sql import functions as dbf

dbf.transform(col=<col>, f=<f>)

Parametreler

Parametre Türü Description
col pyspark.sql.Column veya str Sütun veya ifadenin adı.
f function Giriş dizisinin her öğesine uygulanan bir işlev. Aşağıdaki formlardan birini alabilir: İkinci bağımsız değişkenin öğenin 0 tabanlı dizini olduğu Birli (x: Column) -> Column veya İkili (x: Column, i: Column) -> Column .

İade

pyspark.sql.Column: dönüştürülen öğelerden oluşan yeni bir dizi.

Örnekler

Örnek 1: Dizi öğelerini basit bir işlevle dönüştürme

from pyspark.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]|
+------------+

Örnek 2: Dizin kullanarak dizi öğelerini dönüştürme

from pyspark.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]|
+--------------+