我需要获取所有列以及count.In Scala RDD .
Col1 col2 col3 col4
us A Q1 10
us A Q3 10
us A Q2 20
us B Q4 10
us B Q5 20
uk A Q1 10
uk A Q3 10
uk A Q2 20
uk B Q4 10
uk B Q5 20
我想要的结果如下:
Col1 col2 col3 col4 count
us A Q1 10 3
us A Q3 10 3
us A Q3 10 3
us B Q4 10 2
us B Q5 20 2
uk A Q1 10 3
uk A Q3 10 3
uk A Q3 10 3
uk B Q4 10 2
uk B Q5 20 2
这类似于col1,col2的分组并获得计数 . 现在我需要col13,col4 .
我正在尝试SCALA RDD:
val Top_RDD_1 = RDD.groupBy(f=> ( f._1,f._2 )).mapValues(_.toList)
这产生了
RDD[((String, String), List[(String, String, String, Double, Double, Double)])]
只有(col1,col2),List(col1,col2,col3,col14)的结果如(us,a)List((us,a,Q1,10),(us,a,Q3,10),(us,一,Q2,20)) . ,,,
如何获取列表计数并访问列表值 .
请帮助我激发SCALA RDD代码 .
谢谢Balaji .
1 回答
我可以't see a way to do this in one 1529043 of the RDD - you' ll必须使用
reduceByKey
计算计数,然后join
计算原始RDD . 为了有效地执行此操作(不会导致重新计算输入),您最好在连接之前输入:http://1529047_ /persist