【发布时间】:2019-02-28 05:13:26
【问题描述】:
这应该是微不足道的 - 但我错过了一些东西:
import org.apache.spark.sql._
import org.apache.spark.functions._
val rand = new java.util.Random(42)
val zipUdf = udf( () => 10000 + rand.nextInt(200))
val zdf = df.withColumn("postalCode",col(zipUdf))
直接使用udf显然是不正确的:
found : org.apache.spark.sql.expressions.UserDefinedFunction
required: org.apache.spark.sql.Column
需要什么魔法?
更新:我已经尝试过以下方法:
val zdf = df.withColumn("postalCode",zipUdf)
真正的问题应该是zipUdf() 而不是zipUdf
【问题讨论】:
标签: scala apache-spark apache-spark-sql user-defined-functions