0
点赞
收藏
分享

微信扫一扫

RDD行动操作算子 --- count类

倪雅各 2022-08-12 阅读 62


  • count
    统计RDD中元素的个数。

@Test
def countTest: Unit ={
val rdd = sc.parallelize(Seq(1,2,3,4,5,6))
val result: Long = rdd.count()
println(result) //6
}

  • countByKey
    与count类似,但是是以key为单位进行统计。
    注意:此函数返回的是一个map,不是int。

@Test
def countByKeyTest: Unit ={
val rdd: RDD[(String, Double)] = sc.parallelize(Seq(("薯片",8.0),("可乐",3.0),("面包",4.5)))
val result: collection.Map[String, Long] = rdd.countByKey()
println(result) //Map(面包 -> 1, 可乐 -> 1, 薯片 -> 1)
}

  • countByValue
    统计一个RDD中各个value的出现次数。返回一个map,map的key是元素的值,value是出现的次数。

@Test
def test(): Unit ={
var seq = Seq(("a",1),("b",2),("c",3),("a",2))
var source = sc.parallelize(seq)
var result = source.countByValue()
print(result)
//Map((b,2) -> 1, (c,3) -> 1, (a,1) -> 1, (a,2) -> 1)
}


举报

相关推荐

0 条评论