【发布时间】:2017-04-11 05:51:23
【问题描述】:
我有一个像下面这样的元组:
(Age, List(19,17,11,3,2))
我想获取第一个元素在列表中的位置大于它们的值的位置。为此,我尝试使用 .indexOf() 和 .indexWhere() 但我可能找不到完全正确的语法,所以我不断得到:
value indexWhere 不是 org.apache.spark.rdd.RDD[(String, 可迭代[Int])]
到目前为止我的代码是:
val test =("Age", List(19,17,11,3,2))
test.indexWhere(_.2(_)<=_.2(_).indexOf(_.2(_)) )
我也在这里搜索了文档,没有结果:http://www.scala-lang.org/api/current/index.html#scala.collection.immutable.List
【问题讨论】:
-
您粘贴的代码与您描述的错误无关:该错误意味着您试图在没有这种方法的
org.apache.spark.rdd.RDD上调用indexWhere。RDD是 分布式 集合的抽象,它不是 Scala 集合库的一部分,所以不要期望每个集合库方法都属于它。跨度> -
我能以某种方式克服这个问题吗?
标签: scala apache-spark indexof