首页 文章

根据 Scala 中元组中的值对 RDD 进行排序

提问于
浏览
-1

假设我有 3 行的 RDD,如下所示

{(Sam, 23), 1}
{(Ram, 32), 5}
{(Dan, 25), 2}

第一列是一个说(名称,年龄)的元组。在 Scala 中,如何仅根据第一列中的名称字段对 RDD 进行排序?同样,如何根据年龄对 RDD 进行排序?

2 回答

  • 1

    使用sortBy

    val rdd : RDD[((String,Int),Int)] = ???
    
    rdd.sortBy{case ((name,age),_) => name}
    

    按年龄排序:

    rdd.sortBy{case ((name,age),_) => age}
    
  • 0

    sparkContext.parallelize(Array( ("Sam", 23),("Ram", 32),("Dan", 25) )).sortBy(_._1)//If it's inverted order,input false ,If you pass the age _1 to _2 .foreach(println) 在此处输入图片说明

相关问题