apache-spark - 如何在rdd spark scala中的split()之后过滤?
问题描述
1,John,NY
2,Bill,FL
3,Harry,TX
我有一个包含上述数据的文本文件。
val rdd = sc.textFile("/path").map(x=>(x.split(",")(0).toInt,x.split(",")(1),x.split(",")(2)))
在此之后,我如何过滤名称为 Bill 或数字大于 2 的数据?还是有另一种方法可以在没有拆分功能的情况下做到这一点?
解决方案
使用filter
功能。
df
.map(x=>(x.split(",")(0).toInt,x.split(",")(1),x.split(",")(2)))
.filter(row => row._2 == "Bill" || row._1 > 2)
推荐阅读
- c# - 我们应该在 aspnetcore 中做什么,而不是将 SuppressAsyncSuffixInActionNames 设置为 false?
- matlab - matlab中的回归函数不区分预测变量和响应?
- javascript - setAttribute HTML 后多边形未显示
- django - 知道哪个字段在 django save 中引发异常
- linux - 多个用户可以通过linux上的xrdp同时使用同一个软件吗?
- java - 如何让杰克逊在大摇大摆的上下文中抛出异常而不是接受布尔字段的整数?
- python - 合并两个列表,其中最终结果是一个列表,其中包含来自两个父列表的相同索引条目,由 ',' [PYTHON] 分隔
- javascript - 如何让机器人更改语音频道的名称?(不和谐.js)
- python - 使用唯一键展平/规范化深度嵌套的对象
- tesseract - 图像列表出错后,Tesseract 停止处理