火花的参数太多斯卡拉

问题描述:

RDD.takeOrdered

我得到这个试图与SBT编译火花的参数太多斯卡拉

sbt test 
从/家庭/共享/阿尔托/ SCC/AS1/RDD /项目

[信息]加载项目定义[info]将当前项目设置为rdd(在构建文件中:/ home/shared/Aalto/SCC/As1/rdd /) [info]编译1个Scala源文件到/ home/shared/Aalto/SCC/As1/rdd/target /scala-2.10/classes ... [error] /home/shared/Aalto/SCC/As1/rdd/src/main/scala/questions/GeoProcessor.scala:174:方法takeOrdered的参数太多:(num: Int)(隐式ord:Ordering [(String,Long)])Array [(String,Long)] [error] txt = t xt.zipWithIndex.takeOrdered(txt.count.toInt-2,((a,b)=> a._2> b._2))

而我没有看到第三个参数说我有。 我想要做的是采取所有的元素,但首先2(不知道如果这是正确的>或如果它应该是一个<而不是)。 如果不可能这样做,还有什么其他的好方法?我已经尝试过减法,问题是它以随机顺序返回它们。谢谢。

+0

下一次,请包括引起异常明确的_code_ - 它隐藏在错误信息,很难找到... –

应该

import scala.math.Ordering 

rdd.takeOrdered(n)(Ordering.by(_._2)) 

rdd.takeOrdered(n)(Ordering[Long].on(_._2) 
+0

我想,但仍然不起作用,现在它给了我: sbt test 从/ home/shared/Aalto/SCC/As1/rdd/project加载项目定义 [info]将当前项目设置为rdd(在构建文件中:/家用/共享/阿尔托/ SCC/As1/rdd /) /home/shared/Aalto/SCC/As1/rdd/src/main/scala/questions/GeoProcessor.scala:174:type mismatch; [错误]实测值:数组[(字符串,龙)] [错误]需要:org.apache.spark.rdd.RDD [字符串] [错误] \t \t \t TXT = txt.zipWithIndex.takeOrdered(txt.count .toInt-2)(Ordering [Long] .on(_._ 2)) –

+0

基本类型不匹配,找到Array(String,Long),必需RDD(String) –

+0

好吧,但这是因为赋值,现在很好那么,谢谢! –