Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Kullanıcı tanımlı işlev kaydı için sarmalayıcı. Bu örneğe tarafından spark.udferişilebilir.
Sözdizimi
# Access through SparkSession
spark.udf
Özellikler
| Mülkiyet | Açıklama |
|---|---|
logs |
UDF günlüğü için bir UDFLogs örneği döndürür. Bu özellik deneysel ve kararsızdır. |
Methods
| Yöntem | Açıklama |
|---|---|
register(name, f, returnType) |
Python işlevini (lambda işlevleri dahil) veya kullanıcı tanımlı bir işlevi SQL işlevi olarak kaydeder. Spark Connect'i destekler. |
registerJavaFunction(name, javaClassName, returnType) |
Java kullanıcı tanımlı bir işlevi SQL işlevi olarak kaydeder. Belirtilmediğinde returnType yansıma yoluyla çıkarılır. Spark Connect'i destekler. |
registerJavaUDAF(name, javaClassName) |
Java kullanıcı tanımlı toplama işlevini SQL işlevi olarak kaydeder. Spark Connect'i destekler. |
Örnekler
strlen = spark.udf.register("stringLengthString", lambda x: len(x))
spark.sql("SELECT stringLengthString('test')").collect()
[Row(stringLengthString(test)='4')]
from pyspark.sql.types import IntegerType
from pyspark.sql.functions import udf
slen = udf(lambda s: len(s), IntegerType())
_ = spark.udf.register("slen", slen)
spark.sql("SELECT slen('test')").collect()
[Row(slen(test)=4)]
import pandas as pd
from pyspark.sql.functions import pandas_udf
@pandas_udf("integer")
def add_one(s: pd.Series) -> pd.Series:
return s + 1
_ = spark.udf.register("add_one", add_one)
spark.sql("SELECT add_one(id) FROM range(3)").collect()
[Row(add_one(id)=1), Row(add_one(id)=2), Row(add_one(id)=3)]