gpt4 book ai didi

linux - 具有替代方法的重载方法值 udf

转载 作者:太空狗 更新时间:2023-10-29 11:12:12 25 4
gpt4 key购买 nike

我正在尝试使用以下代码在 Databricks Community Edition 中注册一个表:

import org.apache.spark.sql.functions.udf

val getDataUDF(url: String):Unit = udf(getData(url: String):Unit)

但是,我得到一个错误:

overloaded method value udf with alternatives:

最佳答案

您的 UDF 语法看起来有点奇怪,您不应该在调用 getData() 时定义类型。此外,UDF 的输入应该在方法本身内部。

例如,您有一个像这样的方法getData(它应该有一个返回值):

def getData(url: String): String = {...}

要变成udf,有两种方法:

  1. getData重写为一个函数

    val getData: (String => String) = {...}
    val getDataUDF = udf(getData)
  2. 在udf中调用getData方法

    val getDataUDF = udf((url: String) => {
    getData(url)
    })

这两种方式应该都可以,个人觉得方式一更好一些。

关于linux - 具有替代方法的重载方法值 udf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47626276/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com