val initialScores = Array(1,2,3,4,5)
val nums = spark.sparkContext.parallelize(initialScores)
val sum = nums.map(x=>(x,1)).reduce((x,y)=>(x._1+y._1,x._2+y._2))
println(sum._1/sum._2)
思路:通过map加一个用于计数的维度,然后通过reduce计算,求出和与数量,最后做商求平均值。
注意:不可以使用reduceByKey,因为输入数据是一维的,没有key。