2016-11-23 2 views
1

데이터 프레임의 각 행이나 RDD의 각 요소에 대한 순열을 찾으려고합니다.각 데이터 하위 집합에 대한 순열 찾기

중 하나

val df = Seq((1,2,3),(4,5,6)).toDF("A", "B","C") 
또는

:

val rdd = sc.parallelize(List((1,2,3),(4,5,6))) 

예상 출력 :

(1,2,3), (1,3,2), (2,1, 3) ...

다음의 몇 가지 맛을 시험해 보았지만 지금까지는 행운이 없습니다

df.map(row=>row.toSeq.permutations) 

val rdd = sc.parallelize(List((1,4),(2,5),(3,6))) 
rdd.map(x=>x._1.toSeq.permutations) 

답변

2

시도 :

val rdd = sc.parallelize(List((1,2,3),(4,5,6))) 
rdd.flatMap(_.productIterator.toList.permutations.collect { 
    case List(x: Int, y: Int, z: Int) => (x, y, z) 
}) 
관련 문제