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

Jie*_*hen 7 python apache-spark pyspark

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

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

kar*_*son 12

假设您要通过重复调用添加一个名为newDataFrame 的列,您可以执行以下操作:dfnumpy.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())
Run Code Online (Sandbox Code Playgroud)