我有rdd
List((a,b),(b,c)) List((d,e))
我怎样才能得到它
(a,b) (b,c) (d,e)
我试过rdd.flatmap(x=>x),这不起作用,因为这里有一个键值对列表,而不仅仅是一个值列表。
eivgtgni1#
rdd.flatMap(identity) 将转换 RDD[List[(String, String)]] 至 RDD[(String, String)] .
rdd.flatMap(identity)
RDD[List[(String, String)]]
RDD[(String, String)]
scala> val rdd = sc.parallelize(List(List(("a","b"),("b","c")), List(("d","e")))) ... rdd: org.apache.spark.rdd.RDD[List[(String, String)]] = ParallelCollectionRDD[2] at parallelize at <console>:13 scala> rdd.flatMap(identity) res2: org.apache.spark.rdd.RDD[(String, String)] = MapPartitionsRDD[3] at flatMap at <console>:14 scala> res2.collect() ... res3: Array[(String, String)] = Array((a,b), (b,c), (d,e))
这对任何人都是一样的 RDD[List[T]] ,不管 T . 如果你能分享更多关于你尝试做什么的信息,可能会有更大的帮助。
RDD[List[T]]
T
1条答案
按热度按时间eivgtgni1#
rdd.flatMap(identity)
将转换RDD[List[(String, String)]]
至RDD[(String, String)]
.这对任何人都是一样的
RDD[List[T]]
,不管T
. 如果你能分享更多关于你尝试做什么的信息,可能会有更大的帮助。