【发布时间】:2015-06-11 08:35:55
【问题描述】:
对于通过 pyspark 的 Spark 数据帧,我们可以使用 pyspark.sql.functions.udf 创建一个 user defined function (UDF)。
我想知道我是否可以在udf() 中使用 Python 包中的任何函数,例如来自 numpy 的 np.random.normal?
【问题讨论】:
标签: python apache-spark pyspark
对于通过 pyspark 的 Spark 数据帧,我们可以使用 pyspark.sql.functions.udf 创建一个 user defined function (UDF)。
我想知道我是否可以在udf() 中使用 Python 包中的任何函数,例如来自 numpy 的 np.random.normal?
【问题讨论】:
标签: python apache-spark pyspark
假设您想在通过重复调用numpy.random.normal 构造的DataFrame df 中添加一个名为new 的列,您可以这样做:
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())
【讨论】: