Eug*_*nev 22 scala apache-spark
在Spark中是否可以从scala集合中实现'.combinations'功能?
   /** Iterates over combinations.
   *
   *  @return   An Iterator which traverses the possible n-element combinations of this $coll.
   *  @example  `"abbbc".combinations(2) = Iterator(ab, ac, bb, bc)`
   */
Run Code Online (Sandbox Code Playgroud)
例如,对于size = 2的组合,如何从RDD [X]到RDD [List [X]]或RDD [(X,X)].并且假设RDD中的所有值都是唯一的.
aar*_*man 28
笛卡儿积和两种不同的东西,笛卡尔积将创建一个大小的RDD,rdd.size() ^ 2组合将创建一个大小的RDDrdd.size() choose 2  
val rdd = sc.parallelize(1 to 5)
val combinations = rdd.cartesian(rdd).filter{ case (a,b) => a < b }`.
combinations.collect()
Run Code Online (Sandbox Code Playgroud)
请注意,这只有在我们使用的列表元素上定义了排序时才有效<.这个只适用于选择两个,但可以通过确保a < b序列中所有a和b 的关系轻松扩展
|   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           23706 次  |  
        
|   最近记录:  |