На самом деле вы создаете функцию, а затем pandas_udf из этой данной функции.
Если вы хотите использовать его как pyspark udf, все, что вам нужно сделать, это создать pyspark udf из этой функции.
С приведенным примером документации по кирпичам данных:
from pyspark.sql.functions import *
from pyspark.sql.types import *
def multiply_func(a, b):
return a * b
#the return type depends on your values, so it can be DoubleType()
multiply_func_udf = udf(lambda x,y: multiply_func(x,y), IntegerType())
#then you can call like
spark_df.withColumn("multiplied_values",multiply_func_udf(col("x"),col("y"))