如何编写可以在scala中一次在所有列上实现的自定义函数

o4hqfura  于 2021-05-27  发布在  Spark
关注(0)|答案(0)|浏览(274)

我知道如何编写自定义函数,它可以在pyspark中一次应用于所有列。以下是步骤:1)在pyspark中,我使用explode函数更改数据结构,例如,如果我有10列,我将其更改为两列,一列表示列名称,第二列表示实际列值,分解后,它将变为10*100=1000行2列2),然后我应用分组的pandas udf(按包含列名的column1分组),在这里我实现了我的自定义逻辑,例如,我将一个包含两列的dataframe传递给pandas udf,然后在pandas udf中,我基于最初的两列创建四到五列,然后我对最后的列求和并返回一个数值。
我试图在scala中找到类似的选项,虽然我可以使用udaf/aggregator,但后来我意识到它的工作方式不同,我不能在udaf中创建列,这是我的核心需求之一。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题