请知道如何将非数据帧值作为参数传递给udf。
val df2 = df1.withColumn("newcol", udffunc(df1("col1"), x)).
我定义的udf函数如下。
udffunc = udf(method _)
方法i定义如下。
def method(inputvar1: String, inputvar2: String): Option[Long] = {
...
...
return Longvariable
}
答案 0 :(得分:1)
我可以通过编写以下UDF代码来解决问题。
def udffunc = udf((y:String) => {
val format:String = "x"
method(y, "x")
})
因此,我可以将.withColumn中的一个参数(dataframe列)传递给UDF函数udffunc
,然后能够传递外部参数,即" x"在上面的示例中,函数名为"方法"。