Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Fungsi tabel yang ditentukan pengguna dalam Python.
Konstruktor kelas ini tidak seharusnya dipanggil secara langsung. Gunakan pyspark.sql.functions.udtf untuk membuat instans.
Sintaksis
from pyspark.sql.functions import udtf
@udtf(returnType="c1: int, c2: int")
class MyUDTF:
def eval(self, x: int):
yield x, x + 1
Karakteristik
| Harta benda | Deskripsi |
|---|---|
returnType |
Jenis pengembalian fungsi tabel yang ditentukan pengguna sebagai StructType, atau Tidak Ada jika tidak ditentukan. |
Metode
| Metode | Deskripsi |
|---|---|
asDeterministic() |
Memperbarui UserDefinedTableFunction menjadi deterministik. |
Examples
from pyspark.sql.functions import lit, udtf
@udtf(returnType="c1: int, c2: int")
class PlusOne:
def eval(self, x: int):
yield x, x + 1
PlusOne(lit(1)).show()
+---+---+
| c1| c2|
+---+---+
| 1| 2|
+---+---+
_ = spark.udtf.register(name="plus_one", f=PlusOne)
spark.sql("SELECT * FROM plus_one(1)").collect()
[Row(c1=1, c2=2)]
spark.sql("SELECT * FROM VALUES (0, 1), (1, 2) t(x, y), LATERAL plus_one(x)").collect()
[Row(x=0, y=1, c1=0, c2=1), Row(x=1, y=2, c1=1, c2=2)]