加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

scala – 如何在Spark中将数组分解为多个列

发布时间:2020-12-16 10:07:09 所属栏目:安全 来源:网络整理
导读:我有一个火花数据框看起来像: id DataArraya array(3,2,1)b array(4,1) c array(8,6,1)d array(8,4) 我想将此数据帧转换为: id col1 col2 col3a 3 2 1b 4 2 1c 8 6 1 d 8 2 4 我应该使用什么功能? 解决方法 使用申请: import org.apache.spark.sql.coldf
我有一个火花数据框看起来像:

id   DataArray
a    array(3,2,1)
b    array(4,1)     
c    array(8,6,1)
d    array(8,4)

我想将此数据帧转换为:

id  col1  col2  col3
a    3     2     1
b    4     2     1
c    8     6     1 
d    8     2     4

我应该使用什么功能?

解决方法

使用申请:

import org.apache.spark.sql.col

df.select(
  col("id") +: (0 until 3).map(i => col("DataArray")(i).alias(s"col$i")): _*
)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读