在星火中,如何从行创建元组作为
(Col1 , Col2,Col3 ,(Col4+Col5+Col6))
我有400+动态生成的列名。我不想在DB进行这种聚合,所以选择col1、col2、col3 (col4+col5+col6)不是解决方案。我用卡桑德拉做数据存储
发布于 2016-11-20 07:56:37
总的来说,我认为你的想法是正确的,所以我在这里的建议是语法糖:
df
 .map{row => (row(0), row(1), row(2), (3 until row.length).map(row.getLong(_)).sum)}发布于 2016-11-19 06:05:16
用下面的代码解决了这个问题。然而,我仍在寻找较短的答案,可能是用合成糖..。
 df.map(x => {
        var sum :Long = 0
      for (i <- 3 until  x.length)
      sum = sum + x(i).asInstanceOf[Long]
        (x(0) ,x(1) ,x(2) ,sum)
      }).collect()https://stackoverflow.com/questions/40688709
复制相似问题