spark scala 对RDD进行过滤----filter使用方法

ぐ巨炮叔叔 提交于 2019-12-07 20:08:45

现有一个 rdd: RDD [(String, Int)]

val rdd = sc.parallelize(Seq(("a",1), ("a",2), ("b",2), ("b",3), ("c",1)))

过滤条件逻辑运算符:>, <, ==
整数类型数据的过滤
rdd.filter(_._2==2)
rdd.filter(_._2>2)
rdd.filter(_._2<2)

rdd.filter(x => x._2==2)
rdd.filter(x => x._2>2)
rdd.filter(x => x._2<2)

传递参数过滤
val ind=2
rdd.filter(x => x._2==ind)
rdd.filter(_._2==ind)
rdd.filter(_._2>ind)
rdd.filter(_._2<ind)

rdd.filter(x => x._2==ind)
rdd.filter(x => x._2>ind)
rdd.filter(x => x._2<ind)

字符串类型过滤

rdd.filter(_._1=="a")
rdd.filter(x => x._1=="a")

传递参数过滤

val str = s"a"

rdd.filter(_._1==str)

rdd.filter(x => x._1==str)

rdd.filter(x => x._2==2)

Array及List对象的过滤与RDD的过滤方法一样
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!