首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在火花放电中使用udf函数

如何在火花放电中使用udf函数
EN

Stack Overflow用户
提问于 2020-12-23 16:53:50
回答 1查看 590关注 0票数 1

我正在分析以下代码:

代码语言:javascript
复制
from pyspark.sql.functions import udf,col, desc    
def error(value, pred):
    return abs(value - pred)

udf_MAE = udf(lambda value, pred: MAE(value= value, pred = pred), FloatType())

我知道udf是一个用户定义的函数,但我不明白这意味着什么?因为udf之前没有在代码中定义任何位置?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-25 12:18:34

当您需要定义特定于您的用例的逻辑时,以及当您需要封装该解决方案以便重用时,用户定义函数(UDF)非常有用。只有在没有明确的方法使用内置的functions..Azure DataBricks来完成任务时,才应该使用它们。

创建您的函数(确保没有内置的函数来执行类似的任务)

代码语言:javascript
复制
def greatingFunc(name):
  return 'hello {name}!'

然后,您需要通过指定以下内容将您的函数注册为UDF:

Python中访问的名称(myGreatingUDF)

函数本身(greatingFunc)

函数的返回类型(StringType)

代码语言:javascript
复制
myGreatingUDF = spark.udf.register("myGreatingUDF",greatingFunc,StringType())

现在你可以随时叫你UDF,

代码语言:javascript
复制
guest = 'John'
print(myGreatingUDF(guest))
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65427964

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档