验证并替换元组中的任何值

时间:2017-04-25 05:50:48

标签: apache-spark

如何验证和替换元组中的所有值。在下面的示例中,我想要在元素值为NA时替换要替换为0的元组中的所有元素。 是他们的通用陈述而不是单独验证元素吗?

例如:

b= RDD[String]

样本数据

2003,1,29,3,1651,1655,1912,1913,UA,1017,N202UA,141138119,-1,-4,ORD,MSY,837,5,17,0,NA,0,NA ,NA,NA,NA,NA 2003,1,30,4,1654,1655,1910,1913,UA,1017,N311UA,136138108,NA,NA,ORD,MSY,837,2,26,0,NA,0,NA,NA,NA, NA,NA

所需     c =(1017,-1,-4,ORD,MSY)(1017,0,0,ORD,MSY)

val c = b.map( x => x.split(",")).map(x => (x(9),x(14),x(15),x(16),x(17))).map(x => if (_._ == "NA") "0" else _._)

1 个答案:

答案 0 :(得分:0)

在您的RDD上使用过滤器而不是地图。