Spark自定义函数&例子

spark自定义函数,Spark sql 使用和dataFrame方式使用

复制代码
#自定义函数名字
def convert_zdy(sex):
    return "男" if sex == '1' else "女"

if __name__ == '__main__':
    spark = SparkSession.builder.master("local[*]").appName("自定义函数").getOrCreate()
    dataFrame = spark.read.json(r"D:\pythonProject\b.json")

    dataFrame.createOrReplaceTempView("t_user")
    #注册自定义函数
    convert_dsl = spark.udf.register("convert",convert_zdy)
    #spark SQL使用自定义函数
    spark.sql("select name,age,convert(sex) sex from t_user").show()

    import pyspark.sql.functions as F
    #dsl使用自定义函数(方式1)需要接收udf的函数
    dataFrame.select(F.col("name"),F.col("age"),convert_dsl (F.col("sex")).alias("sex")).show()

    spark.stop()
相关推荐
她说可以呀3 小时前
Vue插槽
前端·javascript·vue.js
qq_448011164 小时前
Vue + Jinja2两套模版与法冲突造成undefinedError
前端·javascript·vue.js
FRing036 小时前
JavaScript入门到精通三十二(深拷贝、浅拷贝、递归函数)
开发语言·前端·javascript
兰亭妙微UI设计公司8 小时前
兰亭妙微ui设计公司分享:B端组件命名如何支持团队协作
前端·javascript·vue.js
小大宇9 小时前
Vue知识点-ElementPlus-03提示框+询问+通知
前端·javascript·vue.js
前端技术官10 小时前
前端的技术判断力是怎么练出来的?
javascript·web前端·localstorage·debounce·弱网处理
程序员大阳12 小时前
副队长JavaScript教程(60)-BOM 初识:window 对象与浏览器模型
javascript·bom·window对象·浏览器模型
web打印社区12 小时前
Chrome-kiosk-printing能上生产吗
开发语言·前端·javascript·chrome·websocket
志尊宝12 小时前
AI原生前端开发(041):AI辅助的状态管理(Zustand/Pinia)
前端·javascript·ai-native
Geoffwo12 小时前
DSH-SKILL基础
javascript