2017-06-04 23 views

答えて

2

あなたはList.combinationsflatMapを使用することができます。

val rdd = sc.parallelize(Seq(List("a", "b", "c"), List("1", "2", "3", "4"), List("e", "f"))) 
// rdd: org.apache.spark.rdd.RDD[List[String]] = ParallelCollectionRDD[0] at parallelize at <console>:24 

rdd.flatMap(list => list.combinations(2)).collect() 
// res1: Array[List[String]] = Array(List(a, b), List(a, c), List(b, c), List(1, 2), List(1, 3), List(1, 4), List(2, 3), List(2, 4), List(3, 4), List(e, f)) 
+1

最適なソリューションを! –

+0

それは動作します、ありがとう! – leonfrank

関連する問題