call_udf
Appeler une fonction définie par l'utilisateur.
Syntaxe
Python
import pyspark.sql.functions as sf
sf.call_udf(udfName=<udfName>, *cols)
parameter
parameter | Type | Description |
|---|---|---|
|
| Nom de la fonction définie par l'utilisateur (UDF). |
|
| Noms de colonne ou colonnes à utiliser dans l'UDF. |
Renvoie
pyspark.sql.Column: résultat de l'UDF exécutée.
Exemples
Exemple 1 : Utilisation de call_udf avec une UDF d'entier.
Python
from pyspark.sql.functions import call_udf, col
from pyspark.sql.types import IntegerType, StringType
df = spark.createDataFrame([(1, "a"),(2, "b"), (3, "c")],["id", "name"])
_ = spark.udf.register("intX2", lambda i: i * 2, IntegerType())
df.select(call_udf("intX2", "id")).show()
Output
+---------+
|intX2(id)|
+---------+
| 2|
| 4|
| 6|
+---------+
Exemple 2 : Utilisation de call_udf avec une UDF de type chaîne de caractères.
Python
from pyspark.sql.functions import call_udf, col
from pyspark.sql.types import IntegerType, StringType
df = spark.createDataFrame([(1, "a"),(2, "b"), (3, "c")],["id", "name"])
_ = spark.udf.register("strX2", lambda s: s * 2, StringType())
df.select(call_udf("strX2", col("name"))).show()
Output
+-----------+
|strX2(name)|
+-----------+
| aa|
| bb|
| cc|
+-----------+