Skip to main content

call_udf

Call a user-defined function.

Syntax

Python
import pyspark.sql.functions as sf

sf.call_udf(udfName=<udfName>, *cols)

Parameters

Parameter

Type

Description

udfName

str

Name of the user defined function (UDF).

cols

pyspark.sql.Column or str

Column names or Columns to be used in the UDF.

Parameter

Type

Description

udfName

str

Name of the user defined function (UDF).

cols

pyspark.sql.Column or str

Column names or Columns to be used in the UDF.

Returns

pyspark.sql.Column: result of executed udf.

Examples

Example 1: Using call_udf with an integer UDF.

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|
+---------+

Example 2: Using call_udf with a string UDF.

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|
+-----------+