spark生成表格套用公式是什么
发表于:2024-11-14 作者:千家信息网编辑
千家信息网最后更新 2024年11月14日,这期内容当中小编将会给大家带来有关spark生成表格套用公式是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。IndexABCD1102882938简化业务描述后
千家信息网最后更新 2024年11月14日spark生成表格套用公式是什么
这期内容当中小编将会给大家带来有关spark生成表格套用公式是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
Index | A | B | C | D |
1 | 10 | 2 | 8 | 8 |
2 | 9 | |||
3 | 8 |
简化业务描述后,需求为:
有表格如上,A列及第一行可以直接给出,其余空白字段要求按公式算出。
公式:
1) B[x] = A[x]-1
2) C[x] = A[x] - B[x]
3) D[x] = (C[x]+D[x-1])/2 //(上一行同列+本行前一列)/2
计算后的表格值应为:
Index | A | B | C | D |
1 | 10 | 2 | 8 | 8 |
2 | 9 | 7 | 2 | 5 |
3 | 8 | 4 | 4 | 4.5 |
代码
import org.apache.spark.rdd.RDDimport org.apache.spark.sql.types._import org.apache.spark.sql.{Row, SparkSession}val schema = StructType( List( StructField("ID", DoubleType, true), StructField( "A", DoubleType, true), StructField( "B", DoubleType, true), StructField( "C", DoubleType, true), StructField( "D", DoubleType, true) ))val data1: RDD[Row] = spark.sparkContext.parallelize( Seq( Row(1.0,10.0,2.0,8.0,8.0) ))val df1 = spark.createDataFrame(data1, schema)df1.createOrReplaceTempView("df1")val data2: RDD[Row] = spark.sparkContext.parallelize( Seq( Row(1.0,9.0,null,null,null) ))val df2 = spark.createDataFrame(data2, schema)df2.createOrReplaceTempView("df2")def func_1(x: Int) = { x - 1}def func_2(x:Int,y:Int):Int = { x - func_1(y)}def func_3(x:Int,y:Int,z:Int):Int = { (x+func_2(y,z))/2}spark.udf.register("func_1", func_1 _)spark.udf.register("func_2", func_2 _)spark.udf.register("func_3", func_3 _)spark.sql( """ |select | df2.ID, | df2.A, | func_1(df1.D) as B, | func_2(df2.A,df1.D) as C, | func_3(df1.D,df2.A,df1.D) as D |from df2 inner join df1 on df1.ID = df2.ID | """.stripMargin).show()
上述就是小编为大家分享的spark生成表格套用公式是什么了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。
公式
表格
生成
一行
内容
分析
专业
业务
中小
代码
内容丰富
同列
如上
字段
就是
文章
更多
本行
知识
空白
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库中省略符
网络安全作业登录
电脑数据库可以开发什么业务
网络安全海报图标
opc远程读取ifix的服务器
铭俊创软件开发公司
石家庄导航软件开发
区块链技术与分布式数据库
网络技术全集视频教程
华泰软件开发
网络安全产品行业
香港服务器直销
数据库申请入库
杨浦区大规模软件开发销售公司
附加数据库怎么选择盘
存储服务器能看监控吗
鲜花庄园服务器异常
智能化网络技术服务
risc服务器多少钱
浙江日报网络安全工程师
服务器锁定或自动解锁
如何把数据库中英文日期转换
软件开发演示ppt
逗趣网络技术
软件开发网站内容描述
win7电脑服务器属性
软件开发的规划目标怎么写
柯南软件开发是什么
江门软件开发难吗
黄石计算机软件开发企业