Scala求平均值

简介: Scala求平均值

分组求平均值


sc.makeRDD(Array(1,2,2,3,3,3),2)
.map(x=>(x,1))
.map(a => (a._1, (a._2, 1))) .reduceByKey((a,b) => (a._1+b._1,a._2+b._2)) .map(t => (t._1,t._2._1/t._2._2))

求一组数的平均值


val rdd = Array(1,2,2,3,3,3)
println(rdd.sum() / rdd.count())

求value的平均值


val rdd = Array(("tom",1),("tom",2),("alice"2))
val map = rdd.map(x => (1,x._2))
//求总和
val res = map.reduceByKey(_+_)
//求总个数
val l = map.count()

 


相关文章
|
8月前
|
安全 Java Scala
Scala集合【上】
Scala集合【上】
|
算法 Scala
159 Scala数组
159 Scala数组
60 0
|
Scala
162 Scala 集合
162 Scala 集合
50 0
|
2月前
|
存储 Java Scala
Scala 数组
Scala 数组
27 1
|
2月前
|
Java Scala
Scala 方法与函数
Scala 方法与函数
28 1
|
8月前
|
编译器 Scala
认识scala中的函数
认识scala中的函数
83 5
|
8月前
|
Scala
Scala函数和方法
Scala函数和方法
44 1
|
机器学习/深度学习 分布式计算 Java
Scala方法和函数
Scala方法和函数
107 0
|
Ubuntu Java 大数据
|
Java Scala
Scala学习一
Scala中的方法与函数: 方法是属于类或者对象的,在运行时,它是加载到JVM的方法区中,而函数则是加载到JVM的堆内存中,同时可以将函数对象赋值给一个变量。函数是一个对象,继承自FunctionN,函数对象有apply、curried、toSting、tupled这些方法,而方法则没有。这是scala与java不同的地方。
102 0
Scala学习一