0
我是一種新的Spark和編程,我也無法理解如何處理rdd.RDD[(Int, Iterable[Double])] = ShuffledRDD[10] at groupByKey
類型的Rdd。我有點興趣的火花學習groupByKey和我有一個過濾RDDGroup由錯誤33:參數的錯誤編號
scala> p.first res11: (Int, Double) = (1,299.98)
我去上面的結果,現在我已經RDD類型的應用,而不是reduceByKey GroupByKEy後(智力,可迭代[雙])並且我想得到像(Int,sum(Double))的結果。 我試過這個,但得到了錯誤。
scala> val price = g.map((a,b) => (a, sum(b)))
<console>:33: error: wrong number of parameters; expected = 1
val price = g.map((a,b) => (a, sum(b)))
請建議和幫助我這個不懂
謝謝@Tzach瑣對此的解釋,它幫了我很多,我有一個愚蠢的問題請與我一起裸露,地圖中案件的重要性如何。 –
'case'是模式匹配表達式的一部分,上面的表達式是'g.map(r => r match {case(k,v)=>(k,v.sum)})'的簡寫。你可以在這裏瞭解模式匹配:http://docs.scala-lang.org/tutorials/tour/pattern-matching.html和這裏簡短的語法:http://danielwestheide.com/blog/2012/12/ 12/the-neophytes-guide-to-scala-part-4-pattern-matching-anonymous-functions.html –
謝謝@Tzach Zohar –