火花数据帧多列到一个列表/数组

时间:2021-07-14 03:54:38

标签: list scala dataframe apache-spark

我有一个 spark(2.2 版)数据框 dtfBAIDate,如下所示。

dataframe dtfBAIDate

我想将它们转换为列表/数组,list((A,xxxxxx),(B,xxxxxx),(C,xxxxxx),(D,xxxxxx))。所以稍后我可以循环其中的元素

lisBAIDate.foreach(e=> {
  val (strBAI, strDate) = e
  println(strBAI + " Date=" + strDate)
...
})

以下代码实现了它。但是有没有更简洁的方法来构造每个元素有 2 个字符串的列表/数组?

  val arrBAI=dtfBAIDate.collect.map(_(0).toString)
    val arrDate=dtfBAIDate.collect.map(_(1).toString)
    val lisBAIDate=(arrBAI zip arrDate)

1 个答案:

答案 0 :(得分:0)

val lisBAIDate= dtfBAIDate.collect.map(x => (x(0).toString,x(1).toString))
相关问题