次の方法で共有


UserDefinedFunction

Python のユーザー定義関数。

このクラスのコンストラクターは、直接呼び出されることは想定されていません。 pyspark.sql.functions.udfまたはpyspark.sql.functions.pandas_udfを使用してインスタンスを作成します。

構文

from pyspark.sql.functions import udf
from pyspark.sql.types import StringType

my_udf = udf(lambda x: x.upper(), StringType())

プロパティ

財産 説明
returnType DataType としてのユーザー定義関数の戻り値の型。

メソッド

メソッド 説明
asNondeterministic() UserDefinedFunction を非決定的に更新します。

例示

from pyspark.sql.functions import udf
from pyspark.sql.types import StringType

upper_udf = udf(lambda x: x.upper(), StringType())
df = spark.createDataFrame([("alice",), ("bob",)], ["name"])
df.select(upper_udf("name")).show()
+-----------+
|<lambda>(name)|
+-----------+
|      ALICE|
|        BOB|
+-----------+
import random
from pyspark.sql.functions import udf
from pyspark.sql.types import IntegerType

random_udf = udf(lambda: random.randint(0, 100), IntegerType()).asNondeterministic()
random_udf.returnType
IntegerType()