如何将元素与其键组合的RDD[(Int,Int)]
转换为RDD[Array[(Int,Int)]]
。
让我们说
(0,0),(1,0),(1,1),(0,1)
并且我希望它是一个数组arr1 =((0,0),(1,0))和arr2((1,1),(0,1)) 因此,生成的rdd将把arr1,arr2作为数组。
答案 0 :(得分:0)
您基本上想做的是将RDD[TupleN]
按第i
个元素分组。您可以使用
rdd.groupBy(_._1)
创建
Map[T, RDD[TupleN]]
其中的键将是第i
个元素(在您的示例中为0或1)。
然后您可以使用mapValues(_.toArray)