来自Python包的函数用于Spark数据帧的udf()

时间:2015-04-06 21:18:45

标签: python apache-spark pyspark

对于通过pyspark的Spark数据帧,我们可以使用pyspark.sql.functions.udf创建user defined function (UDF)

我想知道我是否可以使用udf()中的Python包中的任何函数,例如来自numpy的np.random.normal

1 个答案:

答案 0 :(得分:12)

假设您要将名为new的列添加到通过重复调用df构建的DataFrame numpy.random.normal中,您可以执行以下操作:

import numpy
from pyspark.sql.functions import UserDefinedFunction
from pyspark.sql.types import DoubleType

udf = UserDefinedFunction(numpy.random.normal, DoubleType())

df_with_new_column = df.withColumn('new', udf())