사용자 정의 함수 등록을 위한 래퍼입니다. 이 인스턴스는 .에서 액세스할 spark.udf수 있습니다.
문법
# Access through SparkSession
spark.udf
속성
| 재산 |
설명 |
logs |
UDF 로깅에 대한 UDFLogs 인스턴스를 반환합니다. 이 기능은 실험적이고 불안정합니다. |
메서드
예제
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)]