У меня простой rdd выглядит как
scala> gp_by_cls.collect
res82: Array[(Int, (Int, Int))] = Array((3,(1,26)), (1,(0,37)), (3,(0,77)), (1,(2,914)), (2,(1,13)), (1,(1,25)), (2,(2,893)), (3,(2,1661)), (2,(0,42)))
Я хочу получить максимум ._2 для каждой клавиши (1661, 914, 893), поэтому я сделал
scala> gp_by_cls.reduceByKey{case((a,b),(c,d)) => b if (b > d) else d}
но получите следующую ошибку:
<console>:1: error: ';' expected but 'if' found.
gp_by_cls.reduceByKey{case((a,b),(c,d)) => b if (b > d) else d}
^
Я что-то здесь упускаю?